/* NoImages_style4 — responsive public user interface */
:root {
  --navy-950: #061d3b;
  --navy-900: #092b57;
  --navy-800: #0b3d72;
  --blue-600: #0879e8;
  --blue-500: #1591f4;
  --blue-100: #eaf4ff;
  --pink-600: #cf416a;
  --pink-500: #dc6385;
  --pink-100: #fff0f5;
  --ink-900: #172033;
  --ink-700: #40506a;
  --ink-500: #6d7b91;
  --line: #dbe4ef;
  --surface: #ffffff;
  --surface-soft: #f5f8fc;
  --success: #237a4b;
  --danger: #b42336;
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 20px;
  --shadow-sm: 0 2px 10px rgba(6, 29, 59, .07);
  --shadow-md: 0 12px 34px rgba(6, 29, 59, .11);
  --container: 1600px;
  --font: -apple-system, BlinkMacSystemFont, "Segoe UI", Tahoma, Arial, sans-serif;
}

/* r147: modern member dashboard (account.php?page=main only) */
.page-account-main .site-main > .info {
  max-width: 1160px;
  margin: 0 auto 16px;
  padding: 12px 16px;
  color: #245277;
  line-height: 1.75;
  background: #f1f8fe;
  border: 1px solid #cfe4f6;
  border-radius: 14px;
  box-shadow: none;
}

.page-account-main .site-main > .info > img { display: none; }

.page-account-main .account-welcome {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) minmax(0, .9fr);
  gap: 10px;
  max-width: 1160px;
  margin: 0 auto 18px;
  overflow: visible;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

body.page-account-main .account-welcome__item {
  position: relative;
  display: grid;
  justify-content: start;
  gap: 3px;
  min-height: 66px;
  padding: 10px 15px;
  overflow: hidden;
  text-align: right;
  background: #fff;
  border: 1px solid #dce7f0;
  border-radius: 14px;
  box-shadow: 0 4px 15px rgba(9, 43, 87, .045);
}

.page-account-main .account-welcome__item::before {
  position: absolute;
  inset-block: 13px;
  inset-inline-start: 0;
  width: 3px;
  content: "";
  background: #7ab7e7;
  border-radius: 3px 0 0 3px;
}

.page-account-main .account-welcome__item span {
  color: #71869a;
  font-size: 11.5px;
  line-height: 1.35;
}

.page-account-main .account-welcome__item strong {
  color: #12375f;
  font-size: 14px;
  line-height: 1.4;
}

.page-account-main .account-welcome__identity {
  background: linear-gradient(135deg, #f8fcff 0%, #eef7ff 100%);
  border-color: #cfe2f1;
}

.page-account-main .account-welcome__identity::before {
  background: #177fd7;
}

.page-account-main .account-welcome__last-login strong {
  direction: ltr;
  unicode-bidi: isolate;
}

.page-account-main .account-welcome__link {
  display: none;
}

.page-account-main .account-welcome__membership {
  background: linear-gradient(135deg, #fff 15%, #fff6f9 100%);
  border-color: #efdce3;
}

.page-account-main .account-welcome__membership::before {
  background: #d85a80;
}

.page-account-main .account-welcome__membership strong {
  color: #c63966;
}

.account-dashboard {
  --dashboard-blue: #177fd7;
  --dashboard-blue-dark: #0d4e86;
  --dashboard-blue-soft: #edf7ff;
  --dashboard-pink: #c63966;
  --dashboard-pink-soft: #fff1f5;
  --dashboard-gold: #a87518;
  --dashboard-gold-soft: #fff8e9;
  --dashboard-line: #dce7f0;
  --dashboard-ink: #12375f;
  width: 100%;
  max-width: 1160px;
  margin: 0 auto 32px;
  color: var(--dashboard-ink);
}

.account-dashboard svg.account-dashboard-symbols {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  pointer-events: none;
}

.account-dashboard svg {
  display: block;
  width: 1em;
  height: 1em;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.75;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.account-dashboard-intro {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 310px);
  gap: 24px;
  align-items: center;
  min-height: 154px;
  padding: clamp(20px, 2.4vw, 30px);
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 120%, rgba(217, 75, 118, .11) 0 18%, transparent 18.5%),
    radial-gradient(circle at 91% -35%, rgba(23, 127, 215, .12) 0 26%, transparent 26.5%),
    linear-gradient(135deg, #f8fbff 0%, #eef7ff 62%, #fff8fa 100%);
  border: 1px solid #cfe1ef;
  border-radius: 20px;
  box-shadow: 0 10px 28px rgba(9, 43, 87, .07);
}

.account-dashboard-intro::after {
  position: absolute;
  z-index: -1;
  inset-inline-start: 38%;
  top: 22px;
  width: 7px;
  height: 7px;
  content: "";
  background: var(--dashboard-pink);
  border-radius: 50%;
  box-shadow:
    24px 20px 0 -2px rgba(217, 75, 118, .55),
    58px -4px 0 -1px rgba(23, 127, 215, .35);
}

.account-dashboard-intro__copy {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.account-dashboard-intro__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 8px;
  color: var(--dashboard-pink);
  font-size: 12.5px;
  font-weight: 800;
}

.account-dashboard-intro__eyebrow svg {
  width: 19px;
  height: 19px;
}

.account-dashboard-intro h2 {
  margin: 0;
  color: #0b3563;
  font-size: clamp(22px, 2.1vw, 29px);
  font-weight: 850;
  line-height: 1.35;
}

.account-dashboard-intro p {
  max-width: 58ch;
  margin: 9px 0 0;
  color: #5e7892;
  font-size: 14.5px;
  line-height: 1.8;
}

.account-home-guide {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) minmax(205px, 230px);
  gap: 20px;
  align-items: center;
  margin-top: 17px;
  padding: 18px 20px;
  overflow: hidden;
  background:
    radial-gradient(circle at 3% 110%, rgba(217, 75, 118, .08) 0 19%, transparent 19.5%),
    linear-gradient(135deg, #fbfdff 0%, #f1f8fe 68%, #fff9fb 100%);
  border: 1px solid #d1e3f0;
  border-radius: 18px;
  box-shadow: 0 7px 22px rgba(9, 43, 87, .055);
}

.account-home-guide::after {
  position: absolute;
  z-index: -1;
  inset-block: 17px;
  inset-inline-start: 0;
  width: 3px;
  content: "";
  background: linear-gradient(180deg, var(--dashboard-blue), #6db4eb 68%, var(--dashboard-pink));
  border-radius: 3px 0 0 3px;
}

.account-home-guide__visual {
  position: relative;
  display: grid;
  width: 82px;
  height: 82px;
  place-items: center;
  justify-self: center;
}

.account-home-guide__visual::before {
  position: absolute;
  inset: 6px;
  content: "";
  background: linear-gradient(145deg, #edf7ff, #fff);
  border: 1px solid #cfe3f2;
  border-radius: 24px;
  box-shadow: 0 8px 20px rgba(23, 127, 215, .09);
  transform: rotate(5deg);
}

.account-home-guide__visual-main,
.account-home-guide__visual-member,
.account-home-guide__visual-featured {
  position: absolute;
  display: grid;
  place-items: center;
  border-radius: 50%;
}

.account-home-guide__visual-main {
  z-index: 1;
  width: 54px;
  height: 54px;
  color: var(--dashboard-blue-dark);
  background: #fff;
  border: 1px solid #d6e7f3;
}

.account-home-guide__visual-main svg {
  width: 29px;
  height: 29px;
}

.account-home-guide__visual-member,
.account-home-guide__visual-featured {
  z-index: 2;
  width: 29px;
  height: 29px;
  border: 2px solid #fff;
  box-shadow: 0 3px 10px rgba(9, 43, 87, .12);
}

.account-home-guide__visual-member {
  inset-inline-end: 0;
  bottom: 1px;
  color: var(--dashboard-blue);
  background: #e7f4ff;
}

.account-home-guide__visual-featured {
  inset-inline-start: 0;
  top: 1px;
  color: var(--dashboard-pink);
  background: #fff0f5;
}

.account-home-guide__visual-member svg,
.account-home-guide__visual-featured svg {
  width: 16px;
  height: 16px;
}

.account-home-guide__copy {
  min-width: 0;
}

.account-home-guide__eyebrow {
  display: inline-block;
  margin-bottom: 3px;
  color: var(--dashboard-pink);
  font-size: 11.5px;
  font-weight: 850;
  line-height: 1.4;
}

.account-home-guide h3 {
  margin: 0;
  color: #0b3563;
  font-size: 17px;
  font-weight: 850;
  line-height: 1.45;
}

.account-home-guide p {
  max-width: 69ch;
  margin: 5px 0 0;
  color: #5d748c;
  font-size: 12.5px;
  line-height: 1.75;
}

.account-home-guide__actions {
  display: grid;
  gap: 5px;
  justify-items: stretch;
  min-width: 0;
}

.page-account-main .account-home-guide__primary {
  display: grid;
  grid-template-columns: 35px minmax(0, 1fr) auto;
  gap: 7px;
  align-items: center;
  min-height: 48px;
  padding: 6px 10px;
  color: #fff !important;
  font-size: 12.5px;
  font-weight: 850;
  line-height: 1.4;
  text-align: right;
  background: linear-gradient(135deg, #0d5c9e, #177fd7);
  border: 1px solid #0e6db8;
  border-radius: 13px;
  box-shadow: 0 7px 16px rgba(18, 94, 158, .17);
  transition: box-shadow .18s ease, transform .18s ease;
}

.account-home-guide__primary-icon {
  display: grid;
  width: 35px;
  height: 35px;
  place-items: center;
  color: #0e66ac;
  background: #fff;
  border-radius: 10px;
}

.account-home-guide__primary-icon svg {
  width: 20px;
  height: 20px;
}

.account-home-guide__arrow {
  color: #dcedfa;
  font-size: 18px;
  line-height: 1;
  transition: transform .18s ease;
}

.page-account-main .account-home-guide__secondary {
  min-height: 31px;
  padding: 6px 8px;
  color: #23689e !important;
  font-size: 10.5px;
  font-weight: 800;
  line-height: 1.7;
  text-align: center;
  border-radius: 9px;
}

.page-account-main .account-dashboard-message-summary {
  position: relative;
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr);
  grid-template-areas:
    "icon copy"
    "icon action";
  gap: 1px 12px;
  align-items: center;
  min-height: 94px;
  padding: 14px 16px;
  color: #0e4f87 !important;
  background: rgba(255, 255, 255, .9);
  border: 1px solid #bcd9ef;
  border-radius: 16px;
  box-shadow: 0 7px 20px rgba(18, 80, 132, .07);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.account-dashboard-message-summary::after {
  position: absolute;
  inset-block: 16px;
  inset-inline-end: 0;
  width: 3px;
  content: "";
  background: linear-gradient(180deg, var(--dashboard-blue), #71b7ef);
  border-radius: 3px 0 0 3px;
}

.account-dashboard-message-summary__icon {
  grid-area: icon;
  display: grid;
  width: 50px;
  height: 50px;
  place-items: center;
  color: var(--dashboard-blue);
  background: var(--dashboard-blue-soft);
  border-radius: 14px;
}

.account-dashboard-message-summary__icon svg {
  width: 27px;
  height: 27px;
}

.account-dashboard-message-summary__copy {
  grid-area: copy;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}

.account-dashboard-message-summary__copy > span {
  color: #57738f;
  font-size: 12.5px;
}

.account-dashboard-message-summary__copy strong {
  display: inline-grid;
  min-width: 27px;
  height: 27px;
  place-items: center;
  padding: 0 7px;
  color: #fff;
  font-size: 12px;
  background: var(--dashboard-pink);
  border-radius: 999px;
}

.account-dashboard-message-summary__action {
  grid-area: action;
  color: #0d4d83;
  font-size: 14px;
  font-weight: 850;
}

.account-dashboard-section {
  margin-top: 27px;
}

.account-dashboard-section__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
  padding-inline: 3px;
}

.account-dashboard-section__head > div {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.account-dashboard-section__head h3 {
  margin: 0;
  color: #0b3563;
  font-size: 18px;
  font-weight: 850;
}

.account-dashboard-section__head p {
  margin: 0;
  color: #60778c;
  font-size: 12.5px;
}

.account-dashboard-section__dot {
  width: 9px;
  height: 9px;
  flex: 0 0 auto;
  background: var(--dashboard-blue);
  border: 3px solid #dcefff;
  border-radius: 50%;
  box-sizing: content-box;
}

.account-dashboard-section__dot--pink {
  background: var(--dashboard-pink);
  border-color: #ffe1e9;
}

.account-dashboard-section__dot--gold {
  background: #bc8a2c;
  border-color: #fff1ce;
}

.account-dashboard-section__dot--muted {
  background: #7c93a8;
  border-color: #e8eef3;
}

.account-action-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 13px;
}

.page-account-main .account-action-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 104px;
  padding: 14px;
  overflow: hidden;
  color: var(--dashboard-ink) !important;
  text-align: right;
  background: #fff;
  border: 1px solid var(--dashboard-line);
  border-radius: 16px;
  box-shadow: 0 5px 17px rgba(9, 43, 87, .05);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.account-action-card::after {
  position: absolute;
  inset-block: 17px;
  inset-inline-end: 0;
  width: 3px;
  content: "";
  background: #acd5f4;
  border-radius: 3px 0 0 3px;
}

.account-action-card--messages {
  background: linear-gradient(135deg, #f5fbff 0%, #edf7ff 100%);
  border-color: #bddbf1;
}

.account-action-card--messages::after {
  background: var(--dashboard-blue);
}

.account-action-card__icon {
  display: grid;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  place-items: center;
  color: var(--dashboard-blue);
  background: var(--dashboard-blue-soft);
  border-radius: 14px;
}

.account-action-card__icon svg {
  width: 27px;
  height: 27px;
}

.account-action-card__icon--pink {
  color: #bd3d65;
  background: var(--dashboard-pink-soft);
}

.account-action-card__icon--gold {
  color: var(--dashboard-gold);
  background: var(--dashboard-gold-soft);
}

.account-action-card__copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.account-action-card__copy strong {
  color: #12375f;
  font-size: 14px;
  font-weight: 850;
  line-height: 1.45;
}

.account-action-card__copy small {
  color: #60778c;
  font-size: 11.5px;
  line-height: 1.55;
}

.account-action-card__badge {
  position: absolute;
  inset-inline-end: 10px;
  top: 9px;
  display: inline-grid;
  min-width: 23px;
  height: 23px;
  place-items: center;
  padding: 0 6px;
  color: #fff;
  font-size: 10.5px;
  font-weight: 800;
  background: var(--dashboard-pink);
  border: 2px solid #fff;
  border-radius: 999px;
  box-sizing: border-box;
}

.account-action-grid--interaction .account-action-card::after {
  background: #efb8c8;
}

.account-action-grid--membership .account-action-card {
  background: linear-gradient(135deg, #fff 35%, #fffbf1 100%);
}

.account-action-grid--membership .account-action-card::after {
  background: #dfbf7a;
}

body.page-account-main .account-action-grid--membership {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: min(100%, 800px);
  margin-inline: auto;
}

.account-manage-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 11px;
}

.page-account-main .account-manage-item {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  min-height: 76px;
  padding: 11px 13px;
  color: #284b6d !important;
  background: #fbfcfe;
  border: 1px solid #dde7ef;
  border-radius: 14px;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.account-manage-item__icon {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  color: #5f7c97;
  background: #eef4f8;
  border-radius: 12px;
}

.account-manage-item__icon svg {
  width: 23px;
  height: 23px;
}

.account-manage-item__copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.account-manage-item__copy strong {
  color: #244865;
  font-size: 13.5px;
  font-weight: 800;
  line-height: 1.45;
}

.account-manage-item__copy small {
  color: #60778c;
  font-size: 10.8px;
  line-height: 1.5;
}

.account-manage-item__arrow {
  color: #9aabba;
  font-size: 23px;
  line-height: 1;
}

.account-manage-item--danger {
  color: #b64262 !important;
  background: #fffafb;
  border-color: #f1d5dd;
}

.account-manage-item--danger .account-manage-item__icon {
  color: #c34768;
  background: #fff0f4;
}

.account-manage-item--danger .account-manage-item__copy strong { color: #af3b5c; }

.account-manage-item--logout {
  background: #f8fafc;
}

.page-account-main .account-action-card:focus-visible,
.page-account-main .account-dashboard-message-summary:focus-visible,
.page-account-main .account-home-guide__primary:focus-visible,
.page-account-main .account-home-guide__secondary:focus-visible,
.page-account-main .account-manage-item:focus-visible {
  outline: 3px solid rgba(23, 127, 215, .28);
  outline-offset: 3px;
}

@media (hover: hover) {
  .page-account-main .account-action-card:hover,
  .page-account-main .account-dashboard-message-summary:hover,
  .page-account-main .account-manage-item:hover {
    border-color: #9dc9e9;
    box-shadow: 0 9px 24px rgba(9, 71, 121, .09);
    transform: translateY(-2px);
  }

  .page-account-main .account-home-guide__primary:hover {
    color: #fff !important;
    box-shadow: 0 10px 22px rgba(18, 94, 158, .23);
    transform: translateY(-1px);
  }

  .page-account-main .account-home-guide__primary:hover .account-home-guide__arrow {
    transform: translateX(-3px);
  }

  .page-account-main .account-home-guide__secondary:hover {
    color: #145f99 !important;
    background: rgba(227, 242, 253, .72);
  }

  .page-account-main .account-manage-item--danger:hover { border-color: #e9b6c5; }
}

@media (max-width: 899px) {
  .page-account-main .account-home-guide {
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 14px;
    padding: 16px 17px;
  }

  .page-account-main .account-home-guide__visual {
    width: 70px;
    height: 70px;
  }

  .page-account-main .account-home-guide__visual-main {
    width: 47px;
    height: 47px;
  }

  .page-account-main .account-home-guide__visual-main svg {
    width: 25px;
    height: 25px;
  }

  .page-account-main .account-home-guide__actions {
    grid-column: 1 / -1;
    grid-template-columns: minmax(190px, 230px) minmax(130px, auto);
    align-items: center;
    justify-content: end;
  }

  .page-account-main .account-action-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  body.page-account-main .site-layout.has-right-sidebar {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main"
      "right";
  }

  body.page-account-main .site-layout.has-left-sidebar {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main"
      "left";
  }

  body.page-account-main .site-layout.has-two-sidebars {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-areas:
      "main main"
      "right left";
  }

  body.page-account-main .site-sidebar-right,
  body.page-account-main .site-sidebar-left {
    width: 100%;
    max-width: 360px;
  }

  body.page-account-main .site-sidebar-right {
    justify-self: start;
  }

  body.page-account-main .site-sidebar-left {
    justify-self: end;
  }
}

@media (min-width: 768px) and (max-width: 899px) {
  .page-account-main .account-welcome {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) {
  body.page-account-main .site-layout.has-right-sidebar .account-action-grid,
  body.page-account-main .site-layout.has-left-sidebar .account-action-grid,
  body.page-account-main .site-layout.has-two-sidebars .account-action-grid {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  }

  body.page-account-main .site-layout.has-right-sidebar .account-manage-list,
  body.page-account-main .site-layout.has-left-sidebar .account-manage-list,
  body.page-account-main .site-layout.has-two-sidebars .account-manage-list {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  }
}

@media (min-width: 1200px) and (max-width: 1399px) {
  body.page-account-main .site-layout.has-two-sidebars .account-welcome {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.page-account-main .site-layout.has-two-sidebars .account-dashboard-intro {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 767px) {
  body.page-account-main .site-layout.has-left-sidebar {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main"
      "left";
  }

  .page-account-main .account-welcome {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 13px;
  }

  .page-account-main .account-welcome__item {
    min-height: 55px;
    padding: 8px 11px;
  }

  .page-account-main .account-welcome__identity {
    grid-column: 1 / -1;
  }

  .page-account-main .account-welcome__last-login {
    grid-column: auto;
  }

  .page-account-main .account-dashboard {
    margin-bottom: 22px;
  }

  .page-account-main .account-dashboard-intro {
    grid-template-columns: minmax(0, 1fr) minmax(210px, 250px);
    gap: 14px;
    min-height: 134px;
    padding: 18px;
    border-radius: 17px;
  }

  .page-account-main .account-dashboard-intro h2 {
    font-size: 21px;
  }

  .page-account-main .account-dashboard-intro p {
    font-size: 12.5px;
  }

  .page-account-main .account-dashboard-message-summary {
    grid-template-columns: 44px minmax(0, 1fr);
    min-height: 82px;
    padding: 11px 12px;
  }

  .page-account-main .account-dashboard-message-summary__icon {
    width: 44px;
    height: 44px;
  }

  .page-account-main .account-dashboard-message-summary__icon svg {
    width: 24px;
    height: 24px;
  }

  .page-account-main .account-dashboard-section {
    margin-top: 22px;
  }

  .page-account-main .account-action-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }

  .page-account-main .account-action-card {
    min-height: 108px;
    padding: 11px;
  }

  .page-account-main .account-action-card__icon {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
  }

  .page-account-main .account-action-card__icon svg {
    width: 24px;
    height: 24px;
  }

  .page-account-main .account-action-card__copy strong {
    font-size: 12.5px;
  }

  .page-account-main .account-action-card__copy small {
    font-size: 10.5px;
  }

  .page-account-main .account-manage-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
  }

  .page-account-main .account-manage-item {
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 8px;
    min-height: 70px;
    padding: 9px;
  }

  .page-account-main .account-manage-item__icon {
    width: 36px;
    height: 36px;
  }

  .page-account-main .account-manage-item__icon svg {
    width: 21px;
    height: 21px;
  }

  .page-account-main .account-manage-item__arrow,
  .page-account-main .account-manage-item__copy small {
    display: none;
  }

  .page-account-main .account-manage-item__copy strong {
    font-size: 11.5px;
  }
}

@media (max-width: 599px) {
  .page-account-main .site-main > .info {
    margin-bottom: 10px;
    padding: 10px 12px;
    font-size: 11px;
  }

  .page-account-main .account-dashboard-intro {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    min-height: 0;
    padding: 17px 15px;
  }

  .page-account-main .account-dashboard-intro__eyebrow {
    margin-bottom: 5px;
    font-size: 11.5px;
  }

  .page-account-main .account-dashboard-intro h2 {
    font-size: 19px;
  }

  .page-account-main .account-dashboard-intro p {
    margin-top: 6px;
    font-size: 12px;
    line-height: 1.7;
  }

  .page-account-main .account-home-guide {
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 11px;
    margin-top: 12px;
    padding: 14px;
    border-radius: 16px;
  }

  .page-account-main .account-home-guide__visual {
    width: 56px;
    height: 56px;
  }

  .page-account-main .account-home-guide__visual::before {
    inset: 5px;
    border-radius: 17px;
  }

  .page-account-main .account-home-guide__visual-main {
    width: 40px;
    height: 40px;
  }

  .page-account-main .account-home-guide__visual-main svg {
    width: 22px;
    height: 22px;
  }

  .page-account-main .account-home-guide__visual-member,
  .page-account-main .account-home-guide__visual-featured {
    width: 23px;
    height: 23px;
  }

  .page-account-main .account-home-guide__visual-member svg,
  .page-account-main .account-home-guide__visual-featured svg {
    width: 12px;
    height: 12px;
  }

  .page-account-main .account-home-guide__eyebrow {
    font-size: 10.5px;
  }

  .page-account-main .account-home-guide h3 {
    font-size: 15px;
  }

  .page-account-main .account-home-guide p {
    font-size: 11.5px;
    line-height: 1.7;
  }

  .page-account-main .account-home-guide__actions {
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
    width: 100%;
  }

  .page-account-main .account-home-guide__primary {
    min-height: 46px;
  }

  .page-account-main .account-home-guide__secondary {
    min-height: 33px;
  }

  .page-account-main .account-dashboard-message-summary {
    width: 100%;
    min-height: 76px;
  }

  .page-account-main .account-dashboard-section__head {
    margin-bottom: 9px;
  }

  .page-account-main .account-dashboard-section__head h3 {
    font-size: 15px;
  }

  .page-account-main .account-dashboard-section__head p {
    display: none;
  }

  .page-account-main .account-action-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
  }

  .page-account-main .account-action-card {
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    min-height: 110px;
    padding: 10px 8px;
    text-align: center;
  }

  .page-account-main .account-action-card::after {
    inset-block: 15px;
  }

  .page-account-main .account-action-card__icon {
    width: 45px;
    height: 45px;
    flex-basis: 45px;
    border-radius: 13px;
  }

  .page-account-main .account-action-card__copy {
    justify-items: center;
  }

  .page-account-main .account-action-card__copy strong {
    font-size: 12.5px;
    line-height: 1.35;
  }

  .page-account-main .account-action-card__copy small {
    display: none;
  }

  .page-account-main .account-action-card--messages {
    grid-column: 1 / -1;
    flex-direction: row;
    justify-content: flex-start;
    min-height: 78px;
    padding: 11px 14px;
    text-align: right;
  }

  .page-account-main .account-action-card--messages .account-action-card__copy {
    justify-items: start;
  }

  .page-account-main .account-action-card--messages .account-action-card__copy small {
    display: block;
    font-size: 10.5px;
  }

  .page-account-main .account-manage-list {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  .page-account-main .account-manage-item {
    grid-template-columns: 40px minmax(0, 1fr) auto;
    min-height: 64px;
    padding: 9px 11px;
  }

  .page-account-main .account-manage-item__icon {
    width: 40px;
    height: 40px;
  }

  .page-account-main .account-manage-item__copy strong {
    font-size: 12.5px;
  }

  .page-account-main .account-manage-item__copy small,
  .page-account-main .account-manage-item__arrow {
    display: block;
  }

  .page-account-main .account-manage-item__copy small {
    font-size: 10.2px;
  }
}

@media (max-width: 359px) {
  .page-account-main .account-dashboard-intro {
    padding: 15px 13px;
  }

  .page-account-main .account-home-guide {
    grid-template-columns: 50px minmax(0, 1fr);
    padding: 12px;
  }

  .page-account-main .account-home-guide__visual {
    width: 49px;
    height: 49px;
  }

  .page-account-main .account-dashboard-intro h2 {
    font-size: 18px;
  }

  .page-account-main .account-action-grid {
    gap: 7px;
  }

  .page-account-main .account-action-card {
    min-height: 104px;
    padding: 9px 6px;
  }

  .page-account-main .account-action-card__copy strong {
    font-size: 11.5px;
  }

  .page-account-main .account-action-card__icon {
    width: 42px;
    height: 42px;
    flex-basis: 42px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-account-main .account-action-card,
  .page-account-main .account-dashboard-message-summary,
  .page-account-main .account-home-guide__primary,
  .page-account-main .account-home-guide__arrow,
  .page-account-main .account-manage-item {
    transition: none;
  }

  .page-account-main .account-action-card:hover,
  .page-account-main .account-dashboard-message-summary:hover,
  .page-account-main .account-home-guide__primary:hover,
  .page-account-main .account-home-guide__primary:hover .account-home-guide__arrow,
  .page-account-main .account-manage-item:hover {
    transform: none;
  }
}

/* Login retry page: modern, calm and responsive after an invalid sign-in */
body.page-login-error .site-main {
  min-width: 0;
}

body.page-login-error .site-main > p.error {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 13px;
  width: min(100%, 620px);
  min-height: 72px;
  margin: 20px auto 16px !important;
  padding: 14px 16px !important;
  color: #8d3043;
  font-size: clamp(14px, 1.25vw, 16px);
  font-weight: 700;
  line-height: 1.8;
  text-align: right !important;
  background: linear-gradient(135deg, #fff8fa, #fff3f6);
  border: 1px solid #f0c7d1;
  border-radius: 16px;
  box-shadow: 0 10px 26px rgba(115, 27, 50, .06);
}

body.page-login-error .site-main > p.error::before {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  color: #fff;
  font-size: 23px;
  font-weight: 900;
  line-height: 1;
  content: "!";
  background: linear-gradient(145deg, #e55b7b, #c9365b);
  border-radius: 50%;
  box-shadow: 0 7px 16px rgba(201, 54, 91, .18);
}

body.page-login-error .site-main > p.error > img {
  display: none !important;
}

.login-retry-shell {
  display: grid;
  gap: 14px;
  width: min(100%, 620px);
  margin: 0 auto 28px;
}

.login-retry-form {
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid #d8e6f4;
  border-top: 5px solid #db4b72;
  border-radius: 20px;
  box-shadow: 0 15px 36px rgba(9, 43, 87, .09);
}

.login-retry-form__header {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 20px 22px;
  background: linear-gradient(135deg, #f9fcff 0%, #f4f9ff 58%, #fff8fa 100%);
  border-bottom: 1px solid #e5edf6;
}

.login-retry-form__icon {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  color: #0b6fcb;
  background: #eaf5ff;
  border: 1px solid #d6eaff;
  border-radius: 16px;
}

.login-retry-form__heading {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.login-retry-form__heading > strong {
  color: #0b315f;
  font-size: clamp(20px, 2vw, 25px);
  line-height: 1.35;
}

.login-retry-form__heading > small {
  color: #72859c;
  font-size: clamp(12.5px, 1.25vw, 14px);
  line-height: 1.6;
}

.login-retry-form__fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px 16px;
  padding: 22px;
}

.login-retry-field {
  display: grid;
  gap: 8px;
  min-width: 0;
  color: #173d69;
  font-size: 14px;
  font-weight: 800;
}

body.page-login-error .site-main .login-retry-field > input {
  width: 100% !important;
  min-width: 0;
  min-height: 52px;
  margin: 0;
  padding: 10px 14px;
  color: #102f54;
  font: inherit;
  font-size: 16px;
  text-align: right;
  background: #fff;
  border: 1px solid #bfd2e5;
  border-radius: 13px;
  outline: 0;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

body.page-login-error .site-main .login-retry-field > input:focus {
  background: #fbfdff;
  border-color: #1687ec;
  box-shadow: 0 0 0 4px rgba(22, 135, 236, .11);
}

.login-retry-remember {
  display: flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  min-height: 44px;
  color: #234a73;
  cursor: pointer;
}

.login-retry-remember > input {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  margin: 0;
  accent-color: #0b7fdd;
}

.login-retry-remember > span {
  display: grid;
  gap: 1px;
}

.login-retry-remember strong {
  font-size: 13.5px;
}

.login-retry-remember small {
  color: #8393a7;
  font-size: 11.5px;
  font-weight: 500;
}

.login-retry-captcha {
  padding: 0 22px 22px;
}

body.page-login-error .login-retry-captcha > table.registration-captcha {
  display: block;
  width: 100% !important;
  overflow: hidden;
  background: #f8fbff;
  border: 1px solid #d8e6f4;
  border-radius: 16px;
}

body.page-login-error .login-retry-captcha > table.registration-captcha > tbody {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-login-error .login-retry-captcha .registration-captcha tr,
body.page-login-error .login-retry-captcha .registration-captcha td {
  display: block;
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
}

body.page-login-error .login-retry-captcha .captcha-title-row {
  grid-column: 1 / -1;
}

body.page-login-error .login-retry-captcha .captcha-title-row > .h-td {
  padding: 13px 16px;
  color: #123d6b;
  font-size: 15px;
  font-weight: 800;
  text-align: right;
  background: #eef6ff;
  border: 0;
  border-bottom: 1px solid #dce9f6;
}

body.page-login-error .login-retry-captcha .captcha-image-row,
body.page-login-error .login-retry-captcha .captcha-entry-row {
  min-width: 0;
}

body.page-login-error .login-retry-captcha .captcha-image-cell {
  display: grid;
  place-items: center;
  min-height: 136px !important;
  padding: 16px !important;
  background: #fff;
  border: 0;
  border-inline-end: 1px solid #e0eaf4;
}

body.page-login-error .login-retry-captcha .captcha-image-cell > p {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  margin: 0;
  text-align: center;
}

body.page-login-error .login-retry-captcha #siimage {
  width: auto;
  max-width: min(100%, 230px);
  height: auto;
  min-height: 62px;
  margin: 0 !important;
  object-fit: contain;
  background: #fff;
  border: 1px solid #bdcddd !important;
  border-radius: 9px;
}

body.page-login-error .login-retry-captcha object {
  display: none;
}

body.page-login-error .login-retry-captcha .captcha-image-cell a {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  background: #edf7ee;
  border: 1px solid #d4e9d6 !important;
  border-radius: 12px;
}

body.page-login-error .login-retry-captcha .captcha-image-cell a img {
  width: 28px;
  height: 28px;
}

body.page-login-error .login-retry-captcha .captcha-entry-row {
  display: grid;
  align-content: center;
  gap: 8px;
  min-height: 136px;
  padding: 18px;
}

body.page-login-error .login-retry-captcha .captcha-entry-row > .r-td {
  padding: 0;
  color: #173d69;
  font-size: 13px;
  background: transparent;
  border: 0;
}

body.page-login-error .login-retry-captcha .captcha-label-short {
  display: inline;
}

body.page-login-error .login-retry-captcha .captcha-label-long {
  display: none;
}

body.page-login-error .site-main .login-retry-captcha input#captcha {
  width: 100% !important;
  min-width: 0;
  min-height: 50px;
  margin: 0;
  padding: 10px 14px;
  color: #102f54;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 3px;
  text-align: center;
  background: #fff;
  border: 1px solid #bfd2e5;
  border-radius: 12px;
  outline: 0;
}

body.page-login-error .site-main .login-retry-captcha input#captcha:focus {
  border-color: #1687ec;
  box-shadow: 0 0 0 4px rgba(22, 135, 236, .11);
}

body.page-login-error .login-retry-captcha #capview:empty {
  display: none;
}

body.page-login-error .login-retry-captcha #capview:not(:empty) {
  display: block;
  margin-top: 7px;
}

.login-retry-form__submit {
  display: flex;
  justify-content: center;
  padding: 18px 22px 22px;
  background: #f8fbff;
  border-top: 1px solid #e2ebf4;
}

body.page-login-error .site-main .login-retry-form__submit > input.sub-button {
  width: min(100%, 310px);
  min-height: 52px;
  margin: 0;
  padding: 10px 24px;
  color: #fff;
  font-size: 16px;
  font-weight: 800;
  background: linear-gradient(135deg, #0b3f79, #118cf0);
  border: 0;
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(17, 126, 221, .18);
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

body.page-login-error .site-main .login-retry-form__submit > input.sub-button:hover {
  filter: brightness(1.04);
  box-shadow: 0 12px 26px rgba(17, 126, 221, .23);
  transform: translateY(-1px);
}

.login-retry-assist {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 6px 10px;
  padding: 2px 12px;
  color: #9aa8b8;
  font-size: 13px;
  line-height: 1.7;
}

.login-retry-assist a {
  color: #0b70ca;
  font-weight: 700;
  text-decoration: none;
}

.login-retry-assist a:hover,
.login-retry-assist a:focus-visible {
  color: #084d8c;
  text-decoration: underline;
}

@media (max-width: 767px) {
  body.page-login-error .site-main > p.error {
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 11px;
    width: min(620px, calc(100% - 20px));
    min-height: 66px;
    margin: 14px auto 12px !important;
    padding: 12px 13px !important;
    font-size: 13.5px;
    line-height: 1.75;
    border-radius: 14px;
  }

  body.page-login-error .site-main > p.error::before {
    width: 38px;
    height: 38px;
    font-size: 20px;
  }

  .login-retry-shell {
    width: min(620px, calc(100% - 20px));
    margin-bottom: 22px;
  }

  .login-retry-form {
    border-radius: 18px;
  }

  .login-retry-form__header {
    gap: 11px;
    padding: 16px;
  }

  .login-retry-form__icon {
    width: 46px;
    height: 46px;
    border-radius: 14px;
  }

  .login-retry-form__fields {
    gap: 15px;
    padding: 18px 16px;
  }

  .login-retry-captcha {
    padding: 0 16px 18px;
  }

  body.page-login-error .login-retry-captcha > table.registration-captcha > tbody {
    grid-template-columns: minmax(0, 1fr);
  }

  body.page-login-error .login-retry-captcha .captcha-image-cell {
    min-height: 112px !important;
    padding: 14px !important;
    border-inline-end: 0;
    border-bottom: 1px solid #e0eaf4;
  }

  body.page-login-error .login-retry-captcha .captcha-entry-row {
    min-height: 0;
    padding: 14px;
  }

  .login-retry-form__submit {
    padding: 16px;
  }

  body.page-login-error .site-main .login-retry-form__submit > input.sub-button {
    width: 100%;
    min-height: 50px;
  }

  .login-retry-assist {
    font-size: 12px;
  }
}

@media (max-width: 359px) {
  body.page-login-error .site-main > p.error,
  .login-retry-shell {
    width: min(620px, calc(100% - 14px));
  }

  .login-retry-form__heading > strong {
    font-size: 18px;
  }

  .login-retry-form__heading > small {
    font-size: 12px;
  }

  body.page-login-error .login-retry-captcha .captcha-image-cell > p {
    gap: 7px;
  }

  body.page-login-error .login-retry-captcha #siimage {
    max-width: calc(100% - 50px);
  }
}

@media (prefers-reduced-motion: reduce) {
  body.page-login-error .login-retry-field > input,
  body.page-login-error .login-retry-form__submit > input.sub-button {
    transition: none;
  }
}

/* Failed-login task view: preserve the native site shell and focus the retry task. */
body.page-login-error .site-main > p.error {
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 12px;
  width: min(100%, 700px);
  min-height: 64px;
  margin: 0 auto 16px !important;
  padding: 11px 14px !important;
  color: #8a3044;
  font-size: clamp(14px, 1.15vw, 16px);
  line-height: 1.7;
  background: linear-gradient(135deg, #fff9fb, #fff5f8);
  border-color: #efcbd4;
  border-radius: 15px;
  box-shadow: 0 8px 22px rgba(115, 27, 50, .055);
  scroll-margin-top: 18px;
}

body.page-login-error .site-main > p.error::before {
  width: 40px;
  height: 40px;
  content: "";
  background-color: #fff0f4;
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M12 8v5m0 3h.01M10.3 3.7 2.9 16.55c-.76 1.32.19 2.97 1.71 2.97h14.78c1.52 0 2.47-1.65 1.71-2.97L13.7 3.7c-.76-1.32-2.66-1.32-3.4 0Z%22 fill=%22none%22 stroke=%22%23c9365b%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 stroke-width=%222%22/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 23px 23px;
  border: 1px solid #f2d2da;
  border-radius: 13px;
  box-shadow: none;
}

body.page-login-error .login-retry-shell {
  gap: 10px;
  width: min(100%, 700px);
  margin-bottom: 28px;
}

body.page-login-error .login-retry-form__header {
  gap: 12px;
  padding: 18px 20px;
}

body.page-login-error .login-retry-form__icon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
}

body.page-login-error .login-retry-form__fields {
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
  padding: 20px 20px 16px;
}

body.page-login-error .site-main .login-retry-field > input {
  max-width: none !important;
  min-height: 52px;
}

body.page-login-error .login-retry-options {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px 20px;
  min-width: 0;
  direction: rtl;
}

body.page-login-error .login-retry-forgot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 7px 3px;
  color: #0b70ca;
  font-size: 13.5px;
  font-weight: 800;
  line-height: 1.4;
  text-decoration: none;
  white-space: nowrap;
}

body.page-login-error .login-retry-forgot:hover,
body.page-login-error .login-retry-forgot:focus-visible {
  color: #084d8c;
  text-decoration: underline;
}

body.page-login-error .login-retry-captcha {
  padding: 0 20px 18px;
}

body.page-login-error .login-retry-captcha > table.registration-captcha > tbody {
  grid-template-columns: minmax(0, 1fr);
}

body.page-login-error .login-retry-captcha .captcha-title-row > .h-td {
  min-height: 40px;
  padding: 9px 14px;
}

body.page-login-error .login-retry-captcha .captcha-image-cell {
  min-height: 104px !important;
  padding: 11px 12px !important;
  border-inline-end: 0;
  border-bottom: 1px solid #e0eaf4;
}

body.page-login-error .login-retry-captcha .captcha-entry-row {
  grid-template-columns: max-content minmax(0, 1fr);
  align-items: center;
  align-content: center;
  gap: 9px 12px;
  min-height: 80px;
  padding: 11px 13px;
}

body.page-login-error .login-retry-captcha .captcha-entry-row > td {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
}

body.page-login-error .site-main .login-retry-captcha input#captcha {
  max-width: none !important;
  min-height: 48px;
}

body.page-login-error .login-retry-form__submit {
  padding: 14px 20px 18px;
}

body.page-login-error .site-main .login-retry-form__submit > input.sub-button {
  min-height: 50px;
}

body.page-login-error .site-main .login-retry-form__submit > input.sub-button:focus-visible {
  outline: 3px solid rgba(22, 135, 236, .28);
  outline-offset: 3px;
}

body.page-login-error .login-retry-assist {
  padding-block: 0;
}

@media (min-width: 1200px) {
  body.page-login-error .login-retry-captcha > table.registration-captcha > tbody {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.page-login-error .login-retry-captcha .captcha-image-cell {
    min-height: 112px !important;
    border-inline-end: 1px solid #e0eaf4;
    border-bottom: 0;
  }

  body.page-login-error .login-retry-captcha .captcha-entry-row {
    min-height: 112px;
  }
}

@media (max-width: 767px) {
  body.page-login-error .site-main > p.error {
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 10px;
    width: min(700px, calc(100% - 20px));
    min-height: 62px;
    margin: 0 auto 11px !important;
    padding: 10px 12px !important;
    font-size: 13.5px;
    border-radius: 14px;
    scroll-margin-top: calc(76px + env(safe-area-inset-top, 0px));
  }

  body.page-login-error .site-main > p.error::before {
    width: 38px;
    height: 38px;
    background-size: 22px 22px;
    border-radius: 12px;
  }

  body.page-login-error .login-retry-shell {
    width: min(700px, calc(100% - 20px));
    margin-bottom: 22px;
  }

  body.page-login-error .login-retry-form__header {
    padding: 15px 16px;
  }

  body.page-login-error .login-retry-form__fields {
    gap: 15px;
    padding: 17px 16px 14px;
  }

  body.page-login-error .login-retry-captcha {
    padding: 0 16px 15px;
  }

  body.page-login-error .login-retry-captcha .captcha-image-cell {
    min-height: 98px !important;
    padding: 9px 10px !important;
  }

  body.page-login-error .login-retry-captcha .captcha-entry-row {
    min-height: 72px;
    padding: 10px;
  }

  body.page-login-error .login-retry-form__submit {
    padding: 13px 16px 16px;
  }

  body.page-login-error .site-main .login-retry-form__submit > input.sub-button {
    width: 100%;
  }

  body.page-login-error .login-retry-assist {
    font-size: 12px;
  }
}

@media (max-width: 359px) {
  body.page-login-error .site-main > p.error,
  body.page-login-error .login-retry-shell {
    width: min(700px, calc(100% - 14px));
  }

  body.page-login-error .login-retry-options {
    gap: 8px;
  }

  body.page-login-error .login-retry-remember small {
    display: none;
  }

  body.page-login-error .login-retry-forgot {
    font-size: 12.5px;
  }

  body.page-login-error .login-retry-captcha .captcha-entry-row {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Relationship actions: modern, scoped confirmations without changing callbacks. */
body.relationship-confirm-open {
  overflow: hidden;
}

body.relationship-confirm-open #BoxOverlay {
  position: fixed !important;
  inset: 0 !important;
  z-index: 10000 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  min-height: 100vh;
  background: rgba(2, 20, 43, .62) !important;
  opacity: 1 !important;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  touch-action: none;
}

#alert-Box.relationship-confirm {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  z-index: 10001 !important;
  width: min(452px, calc(100vw - 40px - env(safe-area-inset-left) - env(safe-area-inset-right))) !important;
  max-width: calc(100vw - 40px - env(safe-area-inset-left) - env(safe-area-inset-right)) !important;
  max-height: calc(100vh - 40px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
  max-height: calc(100dvh - 40px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  color: var(--navy-900);
  background: #fff !important;
  border: 1px solid #d7e3ef;
  border-radius: 22px;
  box-shadow: 0 26px 72px rgba(2, 22, 48, .32);
  box-sizing: border-box;
  transform: translate(-50%, -50%);
}

#alert-Box.relationship-confirm #alert-InBox,
#alert-Box.relationship-confirm #alert-BoxContent {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  box-sizing: border-box;
}

#alert-Box.relationship-confirm #alert-BoxContenedor,
#alert-Box.relationship-confirm #alert-BoxContenedor.BoxConfirm {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 28px 28px 24px !important;
  color: var(--navy-900) !important;
  direction: rtl;
  text-align: right;
  background: #fff !important;
  background-image: none !important;
  border: 0 !important;
  box-sizing: border-box;
  font-family: Tahoma, Arial, sans-serif;
  line-height: 1.7;
}

#alert-Box.relationship-confirm .relationship-confirm__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  width: 58px;
  height: 58px;
  margin-bottom: 16px;
  color: #c83d62;
  background: #fff1f5;
  border: 1px solid #f2c8d4;
  border-radius: 50%;
  box-sizing: border-box;
}

#alert-Box.relationship-confirm .relationship-confirm__icon svg {
  display: block;
  width: 31px;
  height: 31px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

#alert-Box.relationship-confirm .relationship-confirm__title,
#alert-Box.relationship-confirm .relationship-confirm__note {
  display: block;
  width: 100%;
  box-sizing: border-box;
}

#alert-Box.relationship-confirm .relationship-confirm__title {
  color: var(--navy-900);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.55;
  text-align: center;
  overflow-wrap: anywhere;
}

#alert-Box.relationship-confirm .relationship-confirm__note {
  margin-top: 7px;
  color: #617388;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.75;
  text-align: center;
}

#alert-Box.relationship-confirm .relationship-confirm__note bdi {
  color: var(--navy-800);
  font-weight: 800;
  unicode-bidi: isolate;
  overflow-wrap: anywhere;
}

#alert-Box.relationship-confirm #alert-Buttons {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 11px;
  width: 100%;
  margin: 22px 0 0 !important;
  padding: 0 !important;
  direction: rtl;
  text-align: center;
}

#alert-Box.relationship-confirm #alert-Buttons input {
  flex: 1 1 0;
  width: auto !important;
  max-width: 176px;
  min-width: 0;
  min-height: 48px;
  margin: 0 !important;
  padding: 10px 16px !important;
  color: var(--navy-800);
  background: #f4f7fa;
  border: 1px solid #cfdae6;
  border-radius: 13px;
  box-shadow: none !important;
  font-family: inherit;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
  white-space: nowrap;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

#alert-Box.relationship-confirm #alert-Buttons input#BoxConfirmBtnOk {
  color: #fff;
  background: #c83d62;
  border-color: #c83d62;
}

#alert-Box.relationship-confirm #alert-Buttons input#BoxConfirmBtnOk:hover,
#alert-Box.relationship-confirm #alert-Buttons input#BoxConfirmBtnOk:active {
  color: #fff;
  background: #b83458;
  border-color: #b83458;
}

#alert-Box.relationship-confirm #alert-Buttons input#BoxConfirmBtnCancel:hover,
#alert-Box.relationship-confirm #alert-Buttons input#BoxConfirmBtnCancel:active {
  color: var(--navy-900);
  background: #eaf1f7;
  border-color: #bdccda;
}

#alert-Box.relationship-confirm #alert-Buttons input:focus-visible {
  outline: 3px solid #8f2948;
  outline-offset: 2px;
}

#alert-Box.relationship-confirm--block {
  border-top: 4px solid #0b5fa8;
}

#alert-Box.relationship-confirm--block .relationship-confirm__icon {
  color: #0b5fa8;
  background: #edf6fd;
  border-color: #cce3f6;
}

#alert-Box.relationship-confirm--block #alert-Buttons input#BoxConfirmBtnOk {
  color: #fff;
  background: linear-gradient(135deg, #0b4f8a, #0d78c9);
  border-color: #0b5fa8;
}

#alert-Box.relationship-confirm--block #alert-Buttons input#BoxConfirmBtnOk:hover,
#alert-Box.relationship-confirm--block #alert-Buttons input#BoxConfirmBtnOk:active {
  background: linear-gradient(135deg, #083f70, #0a67ad);
  border-color: #084f8d;
}

#alert-Box.relationship-confirm--block #alert-Buttons input:focus-visible {
  outline-color: #084f8d;
}

#alert-Box.relationship-confirm--favorite-remove {
  border-top: 4px solid #d85b7e;
}

/* Server-rendered relationship and logout results: visual enhancement only. */
.account-feedback__source,
.account-feedback__legacy-visual {
  display: none !important;
}

.account-feedback__host {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

body.account-feedback-page .site-container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100dvh;
}

body.account-feedback-page .site-layout {
  flex: 1 0 auto;
  width: 100%;
}

body.account-feedback-page .site-footer {
  margin-top: auto;
}

.account-feedback {
  --feedback-color: #0b5fa8;
  --feedback-soft: #edf6fd;
  --feedback-border: #c9dff1;
  position: relative;
  display: grid;
  grid-template-columns: 60px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  width: min(520px, calc(100% - 40px - env(safe-area-inset-left) - env(safe-area-inset-right)));
  margin: clamp(34px, 6vw, 72px) auto;
  padding: 28px 30px;
  overflow: hidden;
  color: var(--navy-900);
  direction: rtl;
  text-align: right;
  background: linear-gradient(135deg, #fff 0%, var(--feedback-soft) 145%);
  border: 1px solid var(--feedback-border);
  border-radius: 22px;
  box-shadow: 0 16px 38px rgba(5, 35, 70, .1);
  box-sizing: border-box;
}

.account-feedback::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: var(--feedback-color);
  content: "";
}

.account-feedback__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  color: var(--feedback-color);
  background: var(--feedback-soft);
  border: 1px solid var(--feedback-border);
  border-radius: 50%;
  box-sizing: border-box;
}

.account-feedback__icon svg {
  display: block;
  width: 31px;
  height: 31px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.account-feedback__content,
.account-feedback__title,
.account-feedback__note {
  display: block;
  min-width: 0;
}

.account-feedback__title {
  color: var(--navy-900);
  font-size: clamp(19px, 1.55vw, 22px);
  font-weight: 800;
  line-height: 1.55;
}

.account-feedback__note {
  margin-top: 5px;
  color: #607286;
  font-size: clamp(13px, 1vw, 15px);
  font-weight: 500;
  line-height: 1.75;
}

.account-feedback--favorite-add {
  --feedback-color: #d43d6b;
  --feedback-soft: #fff2f6;
  --feedback-border: #f1cad6;
}

.account-feedback--favorite-remove {
  --feedback-color: #b84b6b;
  --feedback-soft: #fff5f7;
  --feedback-border: #ecd3da;
}

.account-feedback--member-block {
  --feedback-color: #0b5fa8;
  --feedback-soft: #eef6fc;
  --feedback-border: #cadff0;
}

.account-feedback--logout {
  --feedback-color: #0b66b4;
  --feedback-soft: #eef7ff;
  --feedback-border: #c8e0f3;
  width: min(500px, calc(100% - 40px - env(safe-area-inset-left) - env(safe-area-inset-right)));
}

@media (max-width: 767px) {
  #alert-Box.relationship-confirm {
    width: min(420px, calc(100vw - 28px - env(safe-area-inset-left) - env(safe-area-inset-right))) !important;
    max-width: calc(100vw - 28px - env(safe-area-inset-left) - env(safe-area-inset-right)) !important;
    max-height: calc(100vh - 28px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    max-height: calc(100dvh - 28px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    border-radius: 19px;
  }

  #alert-Box.relationship-confirm #alert-BoxContenedor,
  #alert-Box.relationship-confirm #alert-BoxContenedor.BoxConfirm {
    padding: 22px 20px 19px !important;
  }

  #alert-Box.relationship-confirm .relationship-confirm__icon {
    width: 50px;
    height: 50px;
    margin-bottom: 13px;
  }

  #alert-Box.relationship-confirm .relationship-confirm__icon svg {
    width: 27px;
    height: 27px;
  }

  #alert-Box.relationship-confirm .relationship-confirm__title {
    font-size: 18px;
  }

  #alert-Box.relationship-confirm .relationship-confirm__note {
    margin-top: 5px;
    font-size: 13px;
    line-height: 1.7;
  }

  #alert-Box.relationship-confirm #alert-Buttons {
    gap: 9px;
    margin-top: 18px !important;
  }

  #alert-Box.relationship-confirm #alert-Buttons input {
    max-width: none;
    min-height: 47px;
    padding: 9px 12px !important;
    border-radius: 12px;
    font-size: 14px;
  }

  .account-feedback {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    width: min(520px, calc(100% - 28px - env(safe-area-inset-left) - env(safe-area-inset-right)));
    margin: 28px auto 34px;
    padding: 21px 19px;
    border-radius: 18px;
    box-shadow: 0 11px 28px rgba(5, 35, 70, .085);
  }

  .account-feedback__icon {
    width: 46px;
    height: 46px;
  }

  .account-feedback__icon svg {
    width: 25px;
    height: 25px;
  }

  .account-feedback__title {
    font-size: 17px;
  }

  .account-feedback__note {
    margin-top: 3px;
    font-size: 13px;
    line-height: 1.65;
  }

  .account-feedback.account-feedback--logout {
    width: min(500px, calc(100% - 28px - env(safe-area-inset-left) - env(safe-area-inset-right)));
  }
}

@media (max-width: 339px) {
  #alert-Box.relationship-confirm {
    width: calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right)) !important;
    max-width: calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right)) !important;
    max-height: calc(100vh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    max-height: calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
  }

  #alert-Box.relationship-confirm #alert-BoxContenedor,
  #alert-Box.relationship-confirm #alert-BoxContenedor.BoxConfirm {
    padding: 19px 16px 16px !important;
  }

  #alert-Box.relationship-confirm #alert-Buttons {
    flex-direction: column;
  }

  #alert-Box.relationship-confirm #alert-Buttons input {
    flex: 0 0 auto;
    width: 100% !important;
  }

  .account-feedback {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 11px;
    width: calc(100% - 24px - env(safe-area-inset-left) - env(safe-area-inset-right));
    padding: 18px 15px;
  }

  .account-feedback__icon {
    width: 40px;
    height: 40px;
  }

  .account-feedback__title {
    font-size: 16px;
  }

  .account-feedback__note {
    font-size: 12.5px;
  }
}

#new-members {
  scroll-margin-top: 96px;
}

/* Modern responsive pagination for inbox and outbox message lists. */
.messages-form .message-pager {
  margin: clamp(18px, 2.2vw, 26px) auto 14px;
  padding: 0;
  text-align: center;
  direction: rtl;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  overflow: visible;
}

.message-pager__items {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 5px;
  width: auto;
  min-width: 0;
  max-width: 100%;
  padding: 0;
  direction: rtl;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  box-sizing: border-box;
  overflow: visible;
}

.messages-form .message-pager__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  flex: 0 0 auto;
  min-width: 42px;
  min-height: 42px;
  margin: 0;
  padding: 0 8px;
  color: #284d70;
  background: #ffffff;
  border: 1px solid #d5e2ed;
  border-radius: 16px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
  text-decoration: none;
  white-space: nowrap;
  max-width: 100%;
  box-shadow: 0 3px 9px rgba(6, 29, 59, .06);
  transition:
    transform .15s ease,
    border-color .15s ease,
    color .15s ease,
    background .15s ease,
    box-shadow .15s ease,
    opacity .15s ease;
  box-sizing: border-box;
}

.messages-form .message-pager__current {
  color: #ffffff;
  background: var(--blue-600);
  border-color: #0872d7;
  box-shadow: 0 5px 12px rgba(8, 121, 232, .16);
}

.messages-form .message-pager__nav {
  min-width: 74px;
  color: #0d5c9e;
  background: #eff7ff;
  border-color: #c9e2f5;
  border-radius: 21px;
  font-size: 13px;
}

.messages-form .message-pager__nav[aria-label="الصفحة التالية"] {
  flex-direction: row-reverse;
}

.messages-form .message-pager__edge {
  min-width: 36px;
  min-height: 36px;
  padding: 0 5px;
  color: #647d94;
  background: transparent;
  border-color: transparent;
  border-radius: 50%;
  box-shadow: none;
  opacity: .78;
}

.message-pager__arrow {
  display: inline-block;
  font-size: 19px;
  line-height: 1;
}

.messages-form .message-pager__nav .message-pager__arrow {
  direction: ltr;
  unicode-bidi: isolate;
}

.message-pager__text {
  direction: rtl;
  font-size: 12px;
}

@media (hover: hover) and (pointer: fine) {
  .messages-form a.message-pager__page:hover {
    color: #0b5f9f;
    background: #f3f9ff;
    border-color: #a8cfea;
    box-shadow: 0 5px 12px rgba(7, 49, 91, .09);
    transform: translateY(-1px);
  }

  .messages-form a.message-pager__nav:hover {
    color: #0b5f9f;
    background: #e7f4ff;
    border-color: #98c8eb;
    box-shadow: 0 5px 12px rgba(7, 49, 91, .09);
    transform: translateY(-1px);
  }

  .messages-form a.message-pager__edge:hover {
    color: #0b5f9f;
    background: #f4f9fd;
    border-color: transparent;
    box-shadow: none;
    opacity: 1;
    transform: translateY(-1px);
  }
}

.messages-form a.message-pager__link:focus-visible {
  outline: 3px solid rgba(8, 121, 232, .2);
  outline-offset: 2px;
}

@media (max-width: 1099px) {
  .messages-form .message-pager__link {
    min-width: 44px;
    min-height: 44px;
    padding: 0 8px;
    border-radius: 16px;
  }

  .messages-form .message-pager__nav {
    min-width: 70px;
    border-radius: 22px;
  }

  .messages-form .message-pager__edge {
    min-width: 40px;
    min-height: 44px;
    padding: 0 4px;
    border-radius: 15px;
  }
}

@media (pointer: coarse), (hover: none) {
  .messages-form .message-pager__link {
    min-width: 44px;
    min-height: 44px;
    padding: 0 8px;
    border-radius: 16px;
  }

  .messages-form .message-pager__nav {
    min-width: 70px;
    border-radius: 22px;
  }

  .messages-form .message-pager__edge {
    min-width: 40px;
    min-height: 44px;
    padding: 0 4px;
    border-radius: 15px;
  }
}

@media (max-width: 767px) {
  .messages-form .message-pager {
    margin: 18px 0 14px;
  }

  .messages-form .message-pager__items {
    display: flex;
    width: 100%;
    justify-content: center;
    flex-wrap: nowrap;
    gap: 3px;
  }

  .messages-form .message-pager__nav {
    min-width: 60px;
    padding: 0 6px;
    gap: 4px;
  }

  .messages-form .message-pager__edge {
    min-width: 36px;
  }
}

@media (max-width: 380px) {
  .messages-form .message-pager__items {
    gap: 3px;
  }

  .messages-form .message-pager__nav {
    min-width: 44px;
    width: 44px;
    padding: 0;
  }

  .messages-form .message-pager__nav .message-pager__text {
    display: none;
  }

  .messages-form .message-pager__edge {
    min-width: 36px;
    padding: 0 3px;
  }
}

@media (max-width: 340px) {
  .messages-form .message-pager__items {
    gap: 2px;
  }

  .messages-form .message-pager__nav {
    min-width: 44px;
    width: 44px;
  }

  .messages-form .message-pager__edge {
    min-width: 28px;
    min-height: 44px;
    padding: 0 1px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .messages-form .message-pager__link {
    transition: none;
  }

  .messages-form a.message-pager__link:hover,
  .messages-form .message-pager__current {
    transform: none;
  }
}

*, *::before, *::after { box-sizing: border-box; }

html {
  direction: rtl;
  min-width: 0;
  background: var(--surface-soft);
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body.theme-noimages-3 {
  min-width: 0;
  margin: 0;
  color: var(--ink-900);
  background: var(--surface-soft);
  font-family: var(--font);
  font-size: 15px;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

body.theme-noimages-3 img,
body.theme-noimages-3 video,
body.theme-noimages-3 iframe,
body.theme-noimages-3 object,
body.theme-noimages-3 embed {
  max-width: 100%;
}

body.theme-noimages-3 img { height: auto; border: 0; }

body.theme-noimages-3 a {
  color: #075fc7;
  text-decoration: none;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease;
}

body.theme-noimages-3 a:hover { color: var(--pink-600); }
body.theme-noimages-3 a:focus-visible,
body.theme-noimages-3 button:focus-visible,
body.theme-noimages-3 input:focus-visible,
body.theme-noimages-3 select:focus-visible,
body.theme-noimages-3 textarea:focus-visible,
body.theme-noimages-3 summary:focus-visible {
  outline: 3px solid #62b5f6;
  outline-offset: 3px;
}

body.theme-noimages-3 input:focus-visible,
body.theme-noimages-3 select:focus-visible,
body.theme-noimages-3 textarea:focus-visible {
  border-color: #147fe8 !important;
  box-shadow: 0 0 0 4px rgba(20, 127, 232, .14);
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.site-container {
  width: min(100%, var(--container));
  min-width: 0;
  margin-inline: auto;
  background: var(--surface);
  box-shadow: 0 0 0 1px rgba(9, 43, 87, .04), var(--shadow-md);
}

/* Header and navigation */
.site-header { background: var(--navy-900); }

.primary-nav {
  position: relative;
  z-index: 20;
  min-height: 60px;
  border-bottom: 5px solid var(--pink-600);
  background: var(--navy-900);
}

.primary-nav .nav-bar { display: none; }

.primary-nav > ul {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: clamp(2px, 1.5vw, 24px);
  min-height: 60px;
  margin: 0;
  padding: 0 18px;
  list-style: none;
}

.primary-nav li { display: flex; min-width: 0; }

.primary-nav li a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 60px;
  padding: 8px clamp(10px, 1.2vw, 22px);
  color: #fff;
  font-size: clamp(14px, 1.15vw, 18px);
  font-weight: 650;
  white-space: nowrap;
  border-radius: 8px 8px 0 0;
}

.primary-nav li a:hover,
.primary-nav li a:focus-visible {
  color: #fff;
  background: rgba(255, 255, 255, .1);
}

.hero-link { display: block; line-height: 0; background: #cbeaff; }
.hero-image { display: block; width: 100%; height: auto; aspect-ratio: 1600 / 288; object-fit: contain; }

/* Main layout */
.site-layout {
  display: grid;
  align-items: start;
  gap: clamp(16px, 2vw, 28px);
  min-width: 0;
  padding: clamp(18px, 2.2vw, 34px);
}

.site-layout.no-sidebars { grid-template-columns: minmax(0, 1fr); grid-template-areas: "main"; }
.site-layout.has-right-sidebar { grid-template-columns: minmax(230px, 280px) minmax(0, 1fr); grid-template-areas: "right main"; }
.site-layout.has-left-sidebar { grid-template-columns: minmax(0, 1fr) minmax(230px, 280px); grid-template-areas: "main left"; }
.site-layout.has-two-sidebars { grid-template-columns: minmax(210px, 240px) minmax(0, 1fr) minmax(210px, 240px); grid-template-areas: "right main left"; }

.site-main { grid-area: main; min-width: 0; }
.site-sidebar-left { grid-area: left; }
.site-sidebar-right { grid-area: right; }
.site-sidebar { min-width: 0; }
.mobile-sidepanel-toggle { display: none; }
.mobile-header-action,
.mobile-panel-backdrop,
.mobile-drawer-header { display: none; }

.page-home .site-layout {
  padding-top: clamp(18px, 2.2vw, 34px);
}

/* Center blocks */
.cent {
  width: 100%;
  min-width: 0;
  min-height: 64px;
  margin: 0;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
  border-radius: var(--radius-md) var(--radius-md) 0 0;
}

.centhead {
  display: flex;
  align-items: center;
  min-height: 64px;
  margin: 0;
  padding: 14px clamp(18px, 3vw, 40px);
  color: #fff;
  font-size: clamp(20px, 2vw, 29px);
  font-weight: 750;
}

.centbody {
  min-width: 0;
  overflow: hidden;
  direction: rtl;
  background: var(--surface);
  border: 1px solid var(--line);
  border-top: 0;
  border-radius: 0 0 var(--radius-md) var(--radius-md);
}

.centervalue { min-width: 0; padding: clamp(14px, 2vw, 28px); }
.centdown { height: 0; margin: 0 0 clamp(20px, 3vw, 36px); }
.block-content-no-border { min-width: 0; }

/* Side blocks */
.BlocksCont {
  width: 100%;
  min-width: 0;
  margin: 0 0 18px;
  padding: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
}

.blk1-head_outer, .blk2-head_outer, .blk3-head_outer, .blk4-head_outer {
  width: 100%;
  min-height: 54px;
  border: 0;
  border-radius: 0;
  background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
}

.blk2-head_outer { background: linear-gradient(135deg, #b72f59, var(--pink-500)); }
.blk3-head_outer { background: linear-gradient(135deg, var(--navy-950), var(--navy-800)); }
.blk4-head_outer { background: linear-gradient(135deg, var(--navy-800), var(--blue-500)); }

.blk1-head_in, .blk2-head_in, .blk3-head_in, .blk4-head_in {
  display: flex;
  align-items: center;
  min-height: 54px;
  padding: 10px 16px;
  color: #fff;
  font-size: 17px;
  font-weight: 750;
}

.site-sidebar .blk1-head_in::before,
.site-sidebar .blk2-head_in::before,
.site-sidebar .blk3-head_in::before,
.site-sidebar .blk4-head_in::before {
  content: "";
  flex: 0 0 auto;
  width: 4px;
  height: 22px;
  margin-inline-end: 9px;
  background: #fff;
  border-radius: 999px;
  opacity: .85;
}

.blk1-body_outer, .blk2-body_outer, .blk3-body_outer, .blk4-body_outer {
  width: 100%;
  min-width: 0;
  background: #fff;
  border: 0;
  border-top: 0;
}

.blk1-body_in, .blk2-body_in, .blk3-body_in, .blk4-body_in { min-width: 0; padding: 18px 14px 22px; }

.blk1-footer, .blk2-footer, .blk3-footer, .blk4-footer {
  width: 100%;
  height: 4px;
  border: 0;
  border-radius: 0;
  background: var(--blue-600);
}

.blk2-footer { background: var(--pink-600); }
.blk3-footer { background: var(--navy-800); }
.blk4-footer { background: var(--blue-500); }

.site-sidebar ul { margin: 0; padding: 0; list-style: none; }
.site-sidebar li + li { border-top: 1px solid #edf1f6; }
.site-sidebar li a { display: block; padding: 9px 5px; }
.site-sidebar input[type="text"],
.site-sidebar input[type="password"],
.site-sidebar input[type="email"],
.site-sidebar select,
.site-sidebar textarea { width: 100% !important; }

.sidebar-menu__intro,
.sidebar-login-form__intro {
  margin: 0 0 12px;
  color: var(--ink-500);
  font-size: 12px;
  line-height: 1.6;
}

.sidebar-menu ul { display: grid; gap: 5px; }
.site-sidebar .sidebar-menu li { border: 0; }
.site-sidebar .sidebar-menu a {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 42px;
  padding: 8px 10px;
  overflow-wrap: normal;
  color: var(--navy-900);
  font-weight: 650;
  line-height: 1.45;
  background: var(--surface-soft);
  border: 1px solid transparent;
  border-radius: 10px;
}
.site-sidebar .sidebar-menu a::after {
  content: "‹";
  margin-inline-start: auto;
  color: var(--blue-600);
  font-size: 20px;
  line-height: 1;
}
.site-sidebar .sidebar-menu a:hover,
.site-sidebar .sidebar-menu a:focus-visible {
  color: var(--navy-900);
  background: var(--blue-100);
  border-color: #badcfb;
}
.sidebar-account-menu img {
  flex: 0 0 auto;
  width: 22px;
  height: 22px !important;
  object-fit: contain;
  border-radius: 5px;
}
.sidebar-menu__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 23px;
  height: 23px;
  margin-inline-start: auto;
  padding: 0 6px;
  color: #fff;
  font-size: 11px;
  background: var(--pink-600);
  border-radius: 999px;
}
.sidebar-login-form { display: grid; gap: 11px; }
.sidebar-login-form__field { display: grid; gap: 5px; }
.sidebar-login-form__field > span { color: var(--ink-700); font-size: 12px; font-weight: 700; }
.sidebar-login-form input[type="text"],
.sidebar-login-form input[type="password"] {
  min-height: 42px;
  padding: 8px 10px;
  color: var(--ink-900);
  background: #fff;
  border: 1px solid #cbd8e8;
  border-radius: 9px;
}
.sidebar-login-form__remember { display: flex; align-items: center; gap: 7px; color: var(--ink-700); font-size: 12px; }
.sidebar-login-form__remember input { flex: 0 0 auto; width: 17px; height: 17px; margin: 0; }
.sidebar-login-form__assist {
  display: contents;
}
.sidebar-login-form .sub-button {
  order: 1;
  width: 100%;
  min-height: 43px;
  color: #fff;
  font-weight: 750;
  background: linear-gradient(135deg, var(--pink-600), var(--pink-500));
  border: 0;
  border-radius: 10px;
  cursor: pointer;
}
.sidebar-login-form__recover { order: 2; display: block; margin: 0; text-align: center; font-size: 12px; }
.sidebar-login-form__divider { display: none; }
.sidebar-login-form__register { display: none; }

/* Member cards */
.member-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(12px, 1.7vw, 24px);
  min-width: 0;
}

.member-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
}

.member-card__head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 0;
  min-height: 44px;
  padding: 8px 10px;
  color: #fff;
  background: var(--blue-600);
  font-weight: 750;
  text-align: center;
}

.member-card--woman .member-card__head { background: var(--pink-500); }
.member-card__head a { min-width: 0; overflow: hidden; color: #fff !important; text-overflow: ellipsis; white-space: nowrap; }
.member-card__flag { flex: 0 0 auto; width: 19px; height: 18px !important; object-fit: contain; }

.member-card__body {
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  min-width: 0;
  min-height: 132px;
  padding: 16px;
}

.member-card__avatar-link { display: block; min-width: 0; }
.member-card__avatar {
  display: block;
  width: 82px;
  height: 82px !important;
  border-radius: 50%;
  object-fit: cover;
  object-position: center;
  background: var(--blue-100);
  border: 3px solid #fff;
  box-shadow: 0 0 0 1px var(--line);
}

.member-card__content { min-width: 0; color: var(--ink-700); line-height: 1.75; }
.member-card__content strong { color: var(--ink-900); }
.member-card__date { display: block; margin-top: 8px; color: var(--ink-500); font-size: 13px; }
.member-grid + .pager, .member-pager { margin-top: 20px; text-align: center; }

/* Responsive pagination for the "new members" block on the homepage. */
.newest-members-pager {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin: 20px auto 2px;
  direction: rtl;
  text-align: center;
  box-sizing: border-box;
}

.newest-pager__items {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 5px;
  max-width: 100%;
  direction: rtl;
}

.newest-members-pager .newest-pager__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  flex: 0 0 auto;
  min-width: 42px;
  min-height: 42px;
  margin: 0;
  padding: 0 8px;
  color: #284d70;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
  text-decoration: none !important;
  white-space: nowrap;
  background: #fff;
  border: 1px solid #d5e2ed;
  border-radius: 16px;
  box-shadow: 0 3px 9px rgba(6, 29, 59, .06);
  box-sizing: border-box;
  transition:
    transform .15s ease,
    border-color .15s ease,
    color .15s ease,
    background .15s ease,
    box-shadow .15s ease,
    opacity .15s ease;
}

.newest-members-pager .newest-pager__current {
  color: #fff;
  background: var(--pink-600);
  border-color: #c83b65;
  box-shadow: 0 5px 12px rgba(207, 65, 106, .16);
}

.newest-members-pager .newest-pager__nav {
  min-width: 74px;
  color: #0d5c9e;
  background: #eff7ff;
  border-color: #c9e2f5;
  border-radius: 21px;
  font-size: 13px;
}

.newest-members-pager .newest-pager__nav[aria-label="الصفحة التالية"] {
  flex-direction: row-reverse;
}

.newest-pager__edge-number {
  display: none;
}

.newest-members-pager .newest-pager__edge-page .newest-pager__arrow {
  display: none;
}

.newest-members-pager .newest-pager__edge-page .newest-pager__edge-number {
  display: inline-block;
}

.newest-members-pager .newest-pager__edge {
  min-width: 36px;
  min-height: 36px;
  padding: 0 6px;
  color: #71869b;
  background: transparent;
  border-color: transparent;
  border-radius: 50%;
  box-shadow: none;
  opacity: .72;
}

.newest-pager__arrow {
  display: inline-block;
  direction: ltr;
  unicode-bidi: isolate;
  font-size: 19px;
  line-height: 1;
}

.newest-pager__text {
  direction: rtl;
  font-size: 12px;
}

@media (hover: hover) and (pointer: fine) {
  .newest-members-pager a.newest-pager__page:hover {
    color: #b7355d;
    background: #fff4f7;
    border-color: #eeb8c8;
    box-shadow: 0 6px 14px rgba(207, 65, 106, .11);
    transform: translateY(-1px);
  }

  .newest-members-pager a.newest-pager__nav:hover {
    color: #0b5f9f;
    background: #e7f4ff;
    border-color: #98c8eb;
    box-shadow: 0 5px 13px rgba(7, 49, 91, .1);
    transform: translateY(-1px);
  }

  .newest-members-pager a.newest-pager__edge:hover {
    color: #0b5f9f;
    background: #f4f9fd;
    border-color: transparent;
    box-shadow: none;
    opacity: 1;
    transform: translateY(-1px);
  }
}

.newest-members-pager a.newest-pager__link:focus-visible {
  outline: 3px solid rgba(217, 87, 130, .22);
  outline-offset: 2px;
}

@media (max-width: 1099px) {
  .newest-members-pager .newest-pager__link {
    min-width: 44px;
    min-height: 44px;
    padding: 0 8px;
    border-radius: 16px;
  }

  .newest-members-pager .newest-pager__nav {
    min-width: 72px;
    border-radius: 22px;
  }

  .newest-members-pager .newest-pager__edge {
    min-width: 40px;
    min-height: 44px;
    padding: 0 4px;
    border-radius: 15px;
  }
}

@media (pointer: coarse), (hover: none) {
  .newest-members-pager .newest-pager__link {
    min-width: 44px;
    min-height: 44px;
    padding: 0 8px;
    border-radius: 16px;
  }

  .newest-members-pager .newest-pager__nav {
    min-width: 72px;
    border-radius: 22px;
  }

  .newest-members-pager .newest-pager__edge {
    min-width: 40px;
    min-height: 44px;
    padding: 0 4px;
    border-radius: 15px;
  }
}

@media (max-width: 767px) {
  .newest-members-pager {
    margin: 18px 0 2px;
  }

  .newest-pager__items {
    display: flex;
    width: 100%;
    flex-wrap: nowrap;
    gap: 4px;
  }

  .newest-members-pager .newest-pager__nav {
    min-width: 64px;
  }

  .newest-members-pager .newest-pager__edge {
    min-width: 36px;
  }
}

@media (max-width: 360px) {
  .newest-pager__items {
    gap: 3px;
  }

  .newest-members-pager .newest-pager__link {
    min-width: 44px;
    min-height: 44px;
    padding: 0 7px;
    font-size: 13px;
    border-radius: 14px;
  }

  .newest-members-pager .newest-pager__nav {
    min-width: 44px;
    width: 44px;
    padding: 0;
  }

  .newest-members-pager .newest-pager__nav .newest-pager__text {
    display: none;
  }

  .newest-members-pager .newest-pager__edge {
    min-width: 36px;
    padding: 0 3px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .newest-members-pager .newest-pager__link {
    transition: none;
  }

  .newest-members-pager a.newest-pager__link:hover,
  .newest-members-pager .newest-pager__current {
    transform: none;
  }
}

.member-card[hidden],
.member-filter-empty[hidden] { display: none !important; }

.centimg1--member-filter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.centimg1--member-filter .centhead { flex: 1 1 auto; }
.centimg1--member-filter > .member-filter { margin-inline-end: clamp(18px, 3vw, 40px); }

.member-filter {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  margin-inline-start: auto;
}

.centervalue > .member-filter {
  justify-content: flex-start;
  margin: 0 0 14px;
}

body.theme-noimages-3 .member-filter button {
  min-width: 54px;
  min-height: 34px;
  padding: 5px 13px;
  color: #fff;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.25;
  white-space: nowrap;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, .82);
  border-radius: 999px;
}

body.theme-noimages-3 .member-filter button:hover,
body.theme-noimages-3 .member-filter button:focus-visible {
  color: var(--navy-900);
  background: #fff;
  border-color: #fff;
}

body.theme-noimages-3 .member-filter button.is-active {
  color: var(--blue-600);
  background: #fff;
  border-color: #fff;
  box-shadow: 0 2px 8px rgba(6, 29, 59, .16);
}

.centervalue > .member-filter button {
  color: var(--navy-900);
  border-color: #8fc9fb;
}

.member-filter-empty {
  margin: 12px 0 0;
  padding: 14px;
  color: var(--ink-700);
  text-align: center;
  background: var(--surface-soft);
  border: 1px dashed #b9cbe0;
  border-radius: 10px;
}

/* Legacy member markup remains supported in side blocks */
.blk5-head_outer, .blk5-head_outer2,
.blk5-body_outer, .blk5-body_outer2,
.blk5-head_outerBorder, .blk5-head_outerBorder2,
.blk5-footer, .blk5-footerM { width: 100%; }

.blk5-head_outer, .blk5-head_outer2 {
  min-height: 38px;
  height: auto;
  color: #fff;
  background: var(--pink-500);
  border-radius: var(--radius-sm) var(--radius-sm) 0 0;
}
.blk5-head_outer2 { background: var(--blue-600); }
.blk5-head_in { min-width: 0; padding: 7px 10px; font-size: 14px; font-weight: 700; text-align: center; }
.blk5-body_outer, .blk5-body_outer2 { background: #fff; border: 1px solid var(--line); border-top: 0; }
.blk5-body_in { min-height: 86px; padding: 10px; }
.blk5-footer, .blk5-footerM { height: 5px; background: var(--navy-900); border-radius: 0 0 var(--radius-sm) var(--radius-sm); }
.BlocksUserImgDiv {
  float: right;
  width: 70px;
  height: 70px;
  margin: 0 0 5px 9px;
  border-radius: 50%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

/* Forms and feedback */
body.theme-noimages-3 input,
body.theme-noimages-3 select,
body.theme-noimages-3 textarea,
body.theme-noimages-3 button { font: inherit; }

body.theme-noimages-3 input[type="text"],
body.theme-noimages-3 input[type="password"],
body.theme-noimages-3 input[type="email"],
body.theme-noimages-3 input[type="number"],
body.theme-noimages-3 input[type="tel"],
body.theme-noimages-3 input[type="url"],
body.theme-noimages-3 input[type="file"],
body.theme-noimages-3 select,
body.theme-noimages-3 textarea {
  max-width: 100%;
  min-height: 42px;
  padding: 8px 11px;
  color: var(--ink-900);
  background: #fff;
  border: 1px solid #bdcad9;
  border-radius: var(--radius-sm);
}

body.theme-noimages-3 textarea { min-height: 120px; resize: vertical; }

body.theme-noimages-3 input[type="submit"],
body.theme-noimages-3 input[type="button"],
body.theme-noimages-3 button,
.sub-button {
  min-height: 42px;
  height: auto;
  padding: 8px 18px;
  color: #fff;
  font-weight: 700;
  background: var(--blue-600);
  border: 1px solid var(--blue-600);
  border-radius: var(--radius-sm);
  cursor: pointer;
}

body.theme-noimages-3 input[type="submit"]:hover,
body.theme-noimages-3 input[type="button"]:hover,
body.theme-noimages-3 button:hover { background: var(--navy-800); border-color: var(--navy-800); }

.notice, .info, .success, .error, .wrongajax, .rightajax {
  height: auto;
  margin: 12px 0;
  padding: 14px 16px;
  border-radius: var(--radius-sm);
}
.notice { color: #7a2342; background: var(--pink-100); border: 1px solid #f1a9bf; }
.info { color: #07559e; background: var(--blue-100); border: 1px solid #90c9fb; }
.success, .rightajax { color: #185a38; background: #e7f6ed; border: 1px solid #9ed5b5; }
.error, .wrongajax { color: #8f1f31; background: #fff0f2; border: 1px solid #ed9dab; }

.membership-upgrade-notice {
  display: block !important;
  clear: both;
  float: none !important;
  grid-template-columns: none !important;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin: 16px 0;
  padding: clamp(16px, 3vw, 24px);
  box-sizing: border-box;
  color: #8f1f31;
  text-align: center;
  background: #fff0f2;
  border: 1px solid #ed9dab;
  border-radius: var(--radius-sm);
}
.membership-upgrade-notice::before,
.membership-upgrade-notice::after,
.membership-upgrade-notice > img { display: none !important; content: none !important; }
.membership-upgrade-notice p { margin: 0; text-align: center; }
.membership-upgrade-notice__lead {
  font-size: clamp(15px, 1.55vw, 18px);
  line-height: 1.85;
}
.membership-upgrade-notice__details {
  margin-top: 8px !important;
  font-size: clamp(13px, 1.3vw, 16px);
  line-height: 1.9;
}

/* Tables: data remains tabular; only known layout pages are specialized below */
body.theme-noimages-3 table { max-width: 100%; border-collapse: collapse; }
body.theme-noimages-3 td, body.theme-noimages-3 th { font: inherit; }
.tab { width: 100%; border: 1px solid var(--blue-600); }
.h-td { min-height: 36px; padding: 8px 13px; color: #fff; background: var(--navy-800); }
.r-td { min-height: 38px; padding: 7px 12px; color: var(--ink-900); font-weight: 700; background: #dbeaff; border: 1px solid #fff; }
.l-td, .l-td2, .l-msg { min-height: 38px; padding: 7px 12px; color: var(--ink-900); background: #fff; border: 1px solid #edf1f6; }
.r-tdco { background: var(--pink-100); }
.membership-comparison-mobile { display: none; }

/* Registration and account-update forms */
.page-register .site-main form,
.page-account .site-main form,
.page-contact .site-main form,
.page-search .site-main form,
.page-login .site-main form { width: 100%; min-width: 0; }

.page-register .site-main form > table,
.page-register .site-main form > div > table,
.page-account .site-main form:not(.messages-form):not(.new-message-form) > table,
.page-account .site-main form:not(.messages-form):not(.new-message-form) > div > table,
.page-search .site-main form > table,
.page-contact .site-main form > table {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 0 14px;
  table-layout: fixed;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
}

.page-register .site-main form td,
.page-account .site-main form:not(.messages-form):not(.new-message-form) td,
.page-search .site-main form td,
.page-contact .site-main form td { max-width: 100%; overflow-wrap: anywhere; }

.page-register .site-main input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
.page-register .site-main select,
.page-register .site-main textarea,
.page-account .site-main input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
.page-account .site-main select,
.page-account .site-main textarea,
.page-search .site-main input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
.page-search .site-main select,
.page-search .site-main textarea,
.page-contact .site-main input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
.page-contact .site-main select,
.page-contact .site-main textarea,
.page-login .site-main input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
.page-login .site-main select,
.page-login .site-main textarea { width: min(100%, 460px) !important; }

.page-account .site-main table { width: 100% !important; min-width: 0; }
.page-login .site-main form table { width: 100% !important; min-width: 0; table-layout: fixed; }
.page-users:not(.page-register):not(.page-profile) .site-main > table {
  display: block;
  width: 100% !important;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}

/* Registration agreement: semantic, responsive and isolated from the registration form */
.registration-start {
  display: grid;
  gap: 20px;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  color: var(--ink-900);
}

.registration-terms-card,
.registration-type-card {
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(7, 43, 83, .07);
}

.registration-card-heading {
  padding: clamp(18px, 2.4vw, 26px);
  color: #fff;
  text-align: right;
  background: linear-gradient(120deg, var(--navy-900), var(--blue-600));
}

.registration-card-heading__eyebrow,
.registration-type-heading__step {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: 3px 10px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;
  border-radius: 999px;
}

.registration-card-heading__eyebrow {
  color: #fff;
  background: rgba(255, 255, 255, .15);
  border: 1px solid rgba(255, 255, 255, .26);
}

.registration-card-heading h2,
.registration-type-heading h2 {
  margin: 10px 0 5px;
  font-size: clamp(21px, 2vw, 27px);
  line-height: 1.4;
}

.registration-card-heading h2:only-child,
.registration-type-heading h2:only-child { margin: 0; }

.registration-card-heading p,
.registration-type-heading p {
  margin: 0;
  font-size: clamp(13px, 1.15vw, 15px);
  line-height: 1.75;
}

.registration-card-heading p { color: rgba(255, 255, 255, .86); }

.registration-terms-content {
  max-height: 320px;
  padding: clamp(18px, 2.5vw, 28px);
  overflow-y: auto;
  overscroll-behavior: contain;
  font-size: clamp(14px, 1.18vw, 16px);
  line-height: 1.9;
  text-align: right;
  border-top: 1px solid var(--line);
}

.registration-terms-content h2 {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 10px;
  color: var(--navy-900);
  font-size: clamp(17px, 1.5vw, 20px);
  line-height: 1.5;
}

.registration-terms-content h2:not(:first-child) { margin-top: 22px; }

.registration-terms-content h2::before {
  width: 5px;
  height: 22px;
  content: "";
  background: var(--pink-600);
  border-radius: 999px;
}

.registration-terms-content ul {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 0 24px 0 0;
}

.registration-terms-content li {
  padding-inline-start: 4px;
  line-height: 1.85;
}

.registration-terms-content li::marker { color: var(--blue-600); }
.registration-terms-content > p:empty,
.registration-terms-content > p:last-child { display: none; }

.registration-consent {
  position: relative;
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr);
  gap: 11px;
  align-items: center;
  margin: 0;
  padding: 16px clamp(18px, 2.5vw, 28px);
  cursor: pointer;
  background: #f3f8ff;
  border-top: 1px solid var(--line);
}

.registration-consent input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.registration-consent__control {
  position: relative;
  display: block;
  width: 23px;
  height: 23px;
  background: #fff;
  border: 2px solid #94abc5;
  border-radius: 7px;
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.registration-consent input:checked + .registration-consent__control {
  background: var(--blue-600);
  border-color: var(--blue-600);
}

.registration-consent input:checked + .registration-consent__control::after {
  position: absolute;
  top: 3px;
  right: 7px;
  width: 6px;
  height: 11px;
  content: "";
  border: solid #fff;
  border-width: 0 0 2px 2px;
  transform: rotate(-45deg);
}

.registration-consent input:focus-visible + .registration-consent__control {
  outline: 3px solid rgba(14, 126, 232, .25);
  outline-offset: 2px;
}

.registration-consent__copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.registration-consent__copy strong {
  color: var(--navy-900);
  font-size: 15px;
  line-height: 1.5;
}

.registration-consent__copy small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.registration-terms-details {
  background: #fff;
  border-top: 1px solid var(--line);
}

.registration-terms-details summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 44px;
  padding: 9px clamp(18px, 2.5vw, 28px);
  color: var(--blue-700);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.5;
  cursor: pointer;
  list-style: none;
  background: #fff;
}

.registration-terms-details summary::-webkit-details-marker { display: none; }

.registration-terms-details summary::after {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  content: "+";
  color: var(--blue-700);
  font-size: 18px;
  line-height: 1;
  background: #edf6ff;
  border-radius: 50%;
}

.registration-terms-details[open] summary::after { content: "−"; }

.registration-type-card { max-width: 760px; margin-inline: auto; }

.registration-type-heading {
  padding: 18px 22px 15px;
  text-align: center;
  background: #f7faff;
  border-bottom: 1px solid var(--line);
}

.registration-type-heading__step {
  color: var(--blue-700);
  background: #e8f3ff;
}

.registration-type-heading h2 {
  margin-top: 7px;
  color: var(--navy-900);
}

.registration-type-heading p { color: var(--muted); }

.registration-type-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 16px;
}

.registration-type-option {
  position: relative;
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) 20px;
  gap: 12px;
  align-items: center;
  min-width: 0;
  min-height: 100px;
  padding: 14px;
  color: var(--navy-900);
  text-decoration: none;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: 0 5px 16px rgba(7, 43, 83, .05);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.registration-type-option--man { border-top: 4px solid var(--blue-600); }
.registration-type-option--woman { border-top: 4px solid var(--pink-600); }

.registration-type-option__avatar {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  overflow: hidden;
  background: #eef6ff;
  border: 1px solid #d8e6f5;
  border-radius: 50%;
}

.registration-type-option--woman .registration-type-option__avatar { background: #fff3f7; }

.registration-type-option__avatar img {
  display: block;
  width: 64px;
  height: 64px !important;
  object-fit: contain;
}

.registration-type-option__copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.registration-type-option__copy small {
  color: var(--muted);
  font-size: 11.5px;
  line-height: 1.5;
}

.registration-type-option__copy strong {
  color: var(--navy-900);
  font-size: 17px;
  line-height: 1.45;
}

.registration-type-option__arrow {
  color: var(--blue-600);
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
}

@media (hover: hover) and (pointer: fine) {
  .registration-type-option:hover {
    border-color: #9bc8f4;
    box-shadow: 0 10px 24px rgba(7, 43, 83, .11);
    transform: translateY(-2px);
  }
  .registration-type-option--woman:hover { border-color: #e8a7bd; }
}

/* Registration form: modern cards while preserving every original field and handler */
.registration-form-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  width: 100%;
  max-width: 960px;
  margin: 0 auto 16px;
  padding: 18px 22px;
  color: #fff;
  text-align: right;
  background: linear-gradient(120deg, var(--navy-900), var(--blue-600));
  border-radius: 17px;
  box-shadow: 0 9px 24px rgba(7, 43, 83, .09);
}

.registration-form-hero--woman {
  background: linear-gradient(120deg, var(--navy-900) 0 70%, #bd365f 100%);
}

.registration-form-hero__copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.registration-form-hero__eyebrow {
  width: max-content;
  max-width: 100%;
  padding: 3px 10px;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.5;
  background: rgba(255, 255, 255, .15);
  border: 1px solid rgba(255, 255, 255, .23);
  border-radius: 999px;
}

.registration-form-hero h2 {
  margin: 4px 0 0;
  color: #fff;
  font-size: clamp(21px, 2vw, 27px);
  line-height: 1.35;
}

.registration-form-hero p {
  margin: 0;
  color: rgba(255, 255, 255, .86);
  font-size: 13px;
  line-height: 1.7;
}

.registration-form-hero__privacy {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  min-height: 38px;
  padding: 7px 13px;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
  background: rgba(255, 255, 255, .13);
  border: 1px solid rgba(255, 255, 255, .24);
  border-radius: 999px;
}

.registration-profile-form {
  display: grid;
  gap: 13px;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}

.registration-profile-form > * { min-width: 0; }
.registration-profile-form > br { display: none; }

.registration-profile-form > table.tab {
  display: table;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden;
  table-layout: fixed;
  background: #fff;
  border: 1px solid var(--line) !important;
  border-collapse: separate !important;
  border-spacing: 0;
  border-radius: 15px;
  box-shadow: 0 5px 16px rgba(7, 43, 83, .045);
}

.registration-profile-form > table.tab > tbody {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.registration-profile-form > table.tab > tbody > tr {
  display: grid;
  grid-template-columns: minmax(140px, 39%) minmax(0, 1fr);
  min-width: 0;
  border-bottom: 1px solid #e8eef6;
}

.registration-profile-form > table.tab > tbody > tr:nth-last-child(2):nth-child(even),
.registration-profile-form > table.tab > tbody > tr:last-child { border-bottom: 0; }

.registration-profile-form > table.tab > tbody > tr:empty { display: none; }

.registration-profile-form > table.tab > tbody > tr.registration-section-row,
.registration-profile-form > table.registration-long-answer > tbody > tr {
  grid-column: 1 / -1;
}

.registration-profile-form > table.tab > tbody > tr.registration-section-row,
.registration-profile-form > table.registration-long-answer > tbody > tr {
  grid-template-columns: minmax(0, 1fr);
}

.registration-profile-form > table.tab > tbody > tr > td {
  display: flex;
  align-items: center;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0;
  box-sizing: border-box;
}

.registration-profile-form > table.tab .h-td {
  min-height: 51px;
  padding: 12px 17px;
  color: #fff !important;
  font-size: 17px;
  font-weight: 850;
  line-height: 1.45;
  background: linear-gradient(110deg, var(--navy-900), var(--navy-800));
  border: 0;
}

.registration-profile-form--woman > table.tab .h-td {
  border-inline-end: 4px solid var(--pink-600);
}

.registration-profile-form > table.tab .h-td a,
.registration-profile-form > table.tab .h-td span,
.registration-profile-form > table.tab .h-td p {
  margin: 0;
  color: #fff !important;
  font: inherit;
  text-decoration: none;
}

.registration-profile-form > table.tab .r-td {
  min-height: 58px;
  padding: 9px 13px;
  color: var(--navy-900);
  font-size: 13.5px;
  font-weight: 800;
  line-height: 1.55;
  background: #f3f7fc;
  border: 0;
  border-inline-end: 1px solid #e5edf7;
}

.registration-profile-form > table.tab .l-td {
  flex-wrap: wrap;
  align-content: flex-start;
  gap: 3px;
  min-height: 58px;
  padding: 7px 10px;
  background: #fff;
  border: 0;
  transition: background-color .15s ease;
}

.registration-profile-form input:not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
.registration-profile-form select,
.registration-profile-form textarea {
  width: 100% !important;
  min-width: 0;
  max-width: none !important;
  box-sizing: border-box;
  color: var(--ink-900);
  background: #fff;
  border: 1px solid #b8c9dc;
  border-radius: 9px;
  box-shadow: none;
}

.registration-profile-form input:not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
.registration-profile-form select {
  min-height: 40px;
  padding: 7px 10px;
}

.registration-profile-form textarea {
  min-height: 140px;
  padding: 11px 12px;
  line-height: 1.8;
  resize: vertical;
}

.registration-profile-form input:not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
.registration-profile-form select,
.registration-profile-form textarea {
  scroll-margin-top: 92px;
  transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

.registration-profile-form > table.tab .l-td:focus-within {
  background: #fbfdff;
}

.registration-profile-form input:focus,
.registration-profile-form select:focus,
.registration-profile-form textarea:focus {
  outline: 0;
  border-color: var(--blue-600);
  box-shadow: 0 0 0 3px rgba(14, 126, 232, .14);
}

/*
 * The legacy validator injects loading, success and error content after blur.
 * Keeping a permanent status slot prevents the table row (and its paired row)
 * from changing height every time the member moves to the next field.
 */
.registration-inline-validation {
  display: flex;
  flex: 1 0 100%;
  align-items: flex-start;
  width: 100%;
  min-width: 0;
  height: 22px;
  padding: 1px 2px 0;
  overflow: hidden;
  box-sizing: border-box;
  color: #b42336;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.4;
  text-align: start;
}

.registration-inline-validation > span {
  display: block;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  color: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.registration-inline-validation > span:empty {
  visibility: hidden;
}

.registration-inline-validation img {
  width: 15px;
  height: 15px !important;
  margin: 0 0 0 4px;
  object-fit: contain;
  vertical-align: middle;
}

.registration-inline-validation font {
  display: inline;
  min-width: 0;
  color: inherit !important;
  font: inherit;
  overflow-wrap: anywhere;
}

/*
 * The legacy AJAX response paints every validation message red, including
 * successful checks. Use its existing status icon as the source of truth so
 * only genuine success feedback becomes green while errors remain red.
 */
.registration-inline-validation > span:has(img[src*="right_sign"]) {
  color: #15803d;
}

.registration-inline-validation > span:has(img[src*="deleteIcon"]) {
  color: #b42336;
}

.registration-inline-validation img[src*="right_sign"] ~ font {
  color: #15803d !important;
}

.registration-profile-form > p .sub-button:disabled {
  opacity: .58;
  cursor: not-allowed;
  box-shadow: none;
}

.registration-profile-form #age,
.registration-profile-form #length,
.registration-profile-form #weight,
.registration-profile-form select[name="number_of_children"] {
  width: calc(100% - 38px) !important;
}

.registration-profile-form > div[align="center"] {
  width: 100%;
  margin: -3px 0 1px;
}

.registration-profile-form > div[align="center"] center { display: block; }

.registration-profile-form table.groundnotice {
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden;
  table-layout: fixed;
  background: #fff7f9;
  border: 1px solid #f1bdcc !important;
  border-collapse: separate !important;
  border-spacing: 0;
  border-radius: 11px;
}

.registration-profile-form table.groundnotice .notice {
  width: 100% !important;
  height: auto !important;
  padding: 10px 14px;
  color: #713246;
  font-size: 12px;
  line-height: 1.65;
  text-align: right;
  background: transparent;
  border: 0;
}

.registration-profile-form table.groundnotice ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 3px 25px;
  margin: 0;
  padding: 0 21px 0 0;
}

.registration-profile-form table.groundnotice li::marker { color: var(--pink-600); }
.registration-profile-form table.groundnotice p { margin: 0; line-height: inherit; }

.registration-profile-form > table.registration-long-answer .l-td {
  display: block;
  padding: 13px;
  text-align: right;
}

.registration-profile-form > table.registration-long-answer center,
.registration-profile-form > table.registration-long-answer div,
.registration-profile-form > table.registration-long-answer p {
  width: 100%;
  margin: 0;
}

.registration-profile-form > table.registration-long-answer table.groundnotice {
  margin-bottom: 10px !important;
}

.registration-profile-form > table.registration-long-answer br { display: none; }

.registration-profile-form > table.registration-long-answer textarea {
  display: block;
  width: min(100%, 760px) !important;
  height: 180px;
  min-height: 180px;
  max-height: 180px;
  margin-inline: auto;
  resize: none;
}

.registration-field-feedback {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 4px 12px;
  width: 100%;
  min-height: 22px;
  margin-top: 3px !important;
  line-height: 1.5;
}

.registration-profile-form > table.registration-long-answer .registration-field-feedback {
  max-width: 760px;
  margin-inline: auto;
  justify-content: space-between;
}

.registration-field-feedback small {
  flex: 0 0 auto;
  color: var(--ink-700);
  font-size: 12px;
}

.registration-validation-slot {
  display: inline-flex;
  flex: 1 1 250px;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 26px;
  color: #cf202f;
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}

.registration-validation-slot:empty {
  display: none;
  min-height: 0;
}

.registration-validation-slot img {
  width: 18px;
  height: 18px !important;
  margin-inline-end: 4px;
  object-fit: contain;
  vertical-align: middle;
}

.registration-validation-slot font {
  color: #cf202f !important;
  font: inherit;
}

.registration-validation-slot:has(img[src*="right_sign"]) {
  color: #15803d;
}

.registration-validation-slot:has(img[src*="right_sign"]) font {
  color: inherit !important;
}

.registration-validation-slot:has(img[src*="deleteIcon"]) {
  color: #cf202f;
}

.registration-validation-slot img[src*="right_sign"] ~ font {
  color: #15803d !important;
}

.registration-profile-form object,
.registration-profile-form img { max-width: 100%; }

.registration-profile-form > p {
  margin: 2px 0 8px;
  text-align: center;
}

.registration-profile-form > p .sub-button {
  width: auto !important;
  min-width: 190px;
  min-height: 48px;
  padding: 10px 25px;
  color: #fff;
  font-size: 16px;
  font-weight: 850;
  background: linear-gradient(105deg, var(--navy-900), var(--blue-600));
  border: 0;
  border-radius: 11px;
  box-shadow: 0 7px 17px rgba(14, 126, 232, .18);
  cursor: pointer;
}

.registration-profile-form > p .sub-button:focus-visible {
  outline: 3px solid rgba(14, 126, 232, .25);
  outline-offset: 3px;
}

/* Advanced search and results */
.search-sort {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-bottom: 18px;
}

.search-sort a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 8px 14px;
  color: var(--navy-900);
  background: var(--blue-100);
  border: 1px solid #bddcf8;
  border-radius: 999px;
}

.search-results { display: grid; gap: 18px; min-width: 0; }
.search-result-card { min-width: 0; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-sm); }
.search-result-card__header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; color: #fff; background: var(--navy-900); }
.search-result-card__header > a { color: #fff !important; font-size: 18px; font-weight: 800; }
.member-status { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; }
.member-status img { width: 18px; height: 18px !important; }
.search-result-card__grid { display: grid; grid-template-columns: 130px minmax(0, 1fr) minmax(150px, 190px); gap: 18px; align-items: start; min-width: 0; padding: 18px; }
.search-result-card__identity { display: grid; justify-items: center; gap: 8px; color: var(--ink-700); text-align: center; }
.search-result-card__avatar { display: block; width: 110px; height: 110px !important; object-fit: cover; border-radius: 50%; border: 4px solid #fff; box-shadow: 0 0 0 1px var(--line); }
.search-result-card__details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; min-width: 0; margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: var(--line); }
.search-result-card__details > div { min-width: 0; padding: 9px 11px; background: #fff; }
.search-result-card__details dt { color: var(--ink-500); font-size: 12px; }
.search-result-card__details dd { min-width: 0; margin: 2px 0 0; color: var(--ink-900); font-weight: 650; }
.search-result-card__actions { display: grid; gap: 7px; }
.search-result-card__actions a { display: flex; align-items: center; gap: 8px; min-height: 42px; padding: 7px 10px; color: var(--navy-900); background: var(--surface-soft); border: 1px solid var(--line); border-radius: 9px; }
.search-result-card__actions img { flex: 0 0 auto; width: 26px; height: 26px !important; object-fit: contain; }

@media (max-width: 1050px) {
  .search-result-card__grid { grid-template-columns: 110px minmax(0, 1fr); }
  .search-result-card__actions { grid-column: 1 / -1; grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* Profile and content */
.page-profile .site-main table,
.page-account .site-main table,
.page-content .site-main table { max-width: 100%; }

.page-profile .site-main > table,
.page-profile .centervalue > table { width: 100% !important; table-layout: fixed; }

.page-profile .usual,
.page-profile #usual2 {
  width: 100% !important;
  min-width: 0;
  margin: 14px 0 !important;
  padding: 0 !important;
  overflow: hidden;
  background: #fff !important;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
}

.profile-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 170px minmax(190px, 260px);
  grid-template-areas: "info avatar media";
  gap: 18px;
  align-items: stretch;
  margin-bottom: 18px;
  padding: 18px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
}
.profile-hero__info { grid-area: info; min-width: 0; }
.profile-hero__info h1 { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; color: var(--navy-900); font-size: clamp(22px, 2.2vw, 31px); }
.profile-hero__info h1 img { width: 18px; height: 18px !important; }
.profile-hero__avatar { grid-area: avatar; display: grid; place-items: center; }
.profile-hero__avatar > a { display: block; line-height: 0; border-radius: 50%; }
.profile-hero__avatar > img,
.profile-hero__avatar > a > img { width: 150px; height: 150px !important; object-fit: cover; object-position: 50% 26%; border-radius: 50%; background: var(--blue-100); border: 5px solid #fff; box-shadow: 0 0 0 1px var(--line); }
.profile-media { grid-area: media; display: grid; align-content: center; gap: 8px; }
.profile-media a { display: flex; align-items: center; gap: 9px; min-height: 44px; padding: 8px 10px; color: var(--navy-900); background: var(--surface-soft); border: 1px solid var(--line); border-radius: 9px; }
.profile-media img { flex: 0 0 auto; width: 32px; height: 32px !important; object-fit: contain; }
.profile-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0; overflow: hidden; background: var(--line); border: 1px solid var(--line); border-radius: 10px; }
.profile-facts > div { min-width: 0; padding: 8px 10px; background: #fff; }
.profile-facts dt { color: var(--ink-500); font-size: 12px; }
.profile-facts dd { margin: 1px 0 0; color: var(--ink-900); font-weight: 650; }
.profile-fact--residence { display: none; }
.profile-contact-section { display: contents; }
.profile-report { display: flex; justify-content: flex-end; margin: 14px 0; }
.profile-report a { display: inline-flex; align-items: center; gap: 7px; min-height: 42px; padding: 7px 11px; color: var(--danger); background: #fff5f6; border: 1px solid #f3c3cb; border-radius: 9px; }
.profile-report img { width: 24px; height: 24px !important; }
.profile-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.profile-actions a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-width: 0; min-height: 132px; padding: 12px 8px; color: var(--navy-900); font-weight: 700; text-align: center; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-sm); }
.profile-actions img { width: auto; max-width: 72px; height: 64px !important; object-fit: contain; }

.page-profile .usual ul,
.page-profile #usual2 > ul {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0;
  padding: 14px;
  background: var(--navy-900);
  list-style: none;
}

.page-profile .usual ul a,
.page-profile #usual2 > ul a {
  display: block;
  padding: 9px 12px;
  color: var(--navy-900);
  background: var(--blue-100);
  border: 1px solid #bddcf8;
  border-radius: 999px;
}

.page-profile #usual2 > ul a.selected,
.page-profile #usual2 > ul a:hover,
.page-profile #usual2 > ul a:focus-visible {
  color: #fff;
  background: var(--pink-600);
  border-color: var(--pink-600);
}

.page-profile #usual2 > div[id^="tabs"] {
  min-width: 0;
  padding: 14px;
  background: #fff;
}

.page-content .site-main { font-size: 16px; }
.page-content .site-main p { max-width: 78ch; }
.seo-profile { min-width: 0; padding: clamp(16px, 3vw, 42px); }
.seo-profile > h1 { margin-top: 0; color: var(--navy-900); }
.seo-back-link a { display: inline-flex; min-height: 42px; align-items: center; padding: 7px 13px; color: #fff; background: var(--blue-600); border-radius: 9px; }
.seo-users-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; }
.seo-users-list a { display: block; min-width: 0; padding: 9px 11px; overflow: hidden; color: var(--navy-900); text-overflow: ellipsis; white-space: nowrap; background: #fff; border: 1px solid var(--line); border-radius: 8px; }

@media (max-width: 1050px) {
  .profile-hero { grid-template-columns: minmax(0, 1fr) 150px; grid-template-areas: "info avatar" "media media"; }
  .profile-media { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Account dashboard */
.account-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.account-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-width: 0;
  min-height: 190px;
  padding: 18px 12px;
  color: var(--navy-900) !important;
  font-weight: 750;
  text-align: center;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
}

.account-tile:hover { border-color: #8cc8fb; box-shadow: var(--shadow-md); transform: translateY(-1px); }
.account-tile img { width: auto; max-width: 112px; height: 88px !important; object-fit: contain; }
.account-tile--danger { color: var(--danger) !important; }

/* Compact account summary */
.account-welcome {
  display: grid;
  grid-template-columns: minmax(210px, 1.2fr) minmax(130px, .75fr) minmax(210px, 1.2fr) minmax(145px, .85fr);
  margin: 6px 0 22px;
  overflow: hidden;
  color: var(--navy-900);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
}

.account-welcome__item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 0;
  min-height: 56px;
  padding: 9px 12px;
  font-size: 13px;
  text-align: center;
  border-inline-end: 1px solid var(--line);
}

.account-welcome__item:last-child { border-inline-end: 0; }
.account-welcome__item span { color: var(--ink-500); white-space: nowrap; }
.account-welcome__item strong { color: var(--navy-900); overflow-wrap: anywhere; }
.account-welcome__identity strong { font-size: 14px; }
.account-welcome__link { color: var(--blue-600) !important; font-weight: 800; }
.account-welcome__membership { background: var(--blue-100); }
.account-welcome__membership strong { color: var(--pink-600); }

/* Messages */
.page-account-messages .site-main {
  --message-radius: 16px;
  --message-border: #d7e3f0;
}

.mailbox-shortcuts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  width: min(100%, 720px);
  margin: 2px auto 26px;
}

.mailbox-shortcut {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-width: 0;
  min-height: 116px;
  padding: 14px 20px;
  overflow: hidden;
  color: var(--navy-900) !important;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.5;
  background: linear-gradient(145deg, #fff 0%, #f5f9fe 100%);
  border: 1px solid var(--message-border);
  border-radius: var(--message-radius);
  box-shadow: var(--shadow-sm);
}

.mailbox-shortcut::before {
  position: absolute;
  inset-block: 0;
  inset-inline-start: 0;
  width: 4px;
  content: "";
  background: linear-gradient(180deg, var(--blue-500), var(--blue-600));
}

.mailbox-shortcut:nth-child(2)::before {
  background: linear-gradient(180deg, #e7658b, var(--pink-600));
}

.mailbox-shortcut:hover {
  color: var(--navy-900) !important;
  border-color: #9bcdf8;
  box-shadow: 0 8px 22px rgba(6, 29, 59, .1);
}

.mailbox-shortcut img {
  flex: 0 0 auto;
  width: 66px;
  height: 66px !important;
  object-fit: contain;
}

.mailbox-shortcut span { min-width: 0; text-align: center; }
.mailbox-shortcut b { color: var(--pink-600); }

.page-account-messages .messages-form {
  width: 100%;
  min-width: 0;
}

.message-table {
  width: 100%;
  table-layout: auto;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--message-border);
  border-collapse: separate !important;
  border-spacing: 0;
  border-radius: var(--message-radius);
  box-shadow: var(--shadow-sm);
}

.message-table caption {
  padding: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.5;
  text-align: right;
  background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
}

.message-table__caption-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 58px;
  padding: 13px 18px;
}

.message-table__title {
  min-width: 0;
  color: #fff;
  font-size: 19px;
  font-weight: 850;
}

.message-table th {
  padding: 11px 13px;
  color: var(--ink-700);
  font-size: 13px;
  font-weight: 800;
  text-align: right;
  background: #f2f7fc;
  border: 0;
  border-bottom: 1px solid var(--message-border);
}

.message-table td {
  padding: 13px;
  color: var(--ink-700);
  font-size: 14px;
  line-height: 1.55;
  text-align: right;
  background: #fff;
  border: 0;
  border-bottom: 1px solid #e6edf5;
}

.message-table tbody tr:last-child td { border-bottom: 0; }
.message-table th:first-child,
.message-table td:first-child {
  width: 62px;
  text-align: center;
}
.message-table th:nth-child(2),
.message-table td:nth-child(2) {
  width: auto;
  min-width: 220px;
  text-align: right;
}
.message-table th:nth-child(3),
.message-table td:nth-child(3) { width: 22%; }
.message-table th:nth-child(4),
.message-table td:nth-child(4) {
  width: 150px;
  white-space: nowrap;
}
.message-table td:nth-child(2) a {
  color: var(--navy-800);
  font-weight: 800;
}

.message-subject-content {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.message-subject-content a {
  min-width: 0;
  overflow-wrap: anywhere;
}

.message-status-badge {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 3px 9px;
  color: #fff;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
  white-space: nowrap;
  background: #0b78d5;
  border: 1px solid #0769bd;
  border-radius: 999px;
  box-shadow: 0 2px 6px rgba(11, 120, 213, .16);
}

.message-table .message-read td {
  color: #4b6076;
  background: #fff;
  font-weight: 500;
}

.message-table .message-unread td {
  color: #0a315b;
  background: #edf6ff;
  font-weight: 800;
}

/*
 * Inbox hierarchy: opened messages stay calm while unread messages carry the
 * stronger blue emphasis. These rules are deliberately scoped to the inbox so
 * the sent-message table keeps its existing appearance.
 */
.message-table--inbox .message-read td:nth-child(2) a {
  color: #315574;
  font-weight: 700;
}

.message-table--inbox .message-read td:nth-child(3),
.message-table--inbox .message-read td:nth-child(4) {
  color: #61758a;
}

.message-table--inbox .message-unread td:nth-child(2) a {
  color: #073b70;
  font-weight: 800;
}

.message-table--inbox .message-unread td:nth-child(3),
.message-table--inbox .message-unread td:nth-child(4) {
  color: #0a315b;
  font-weight: 800;
}

.message-table input[type="checkbox"] {
  width: 19px;
  height: 19px;
  margin: 0;
  accent-color: var(--blue-600);
}

.message-bulk-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 9px;
  margin-top: 14px;
}
.message-bulk-actions .sub-button {
  min-height: 40px;
  padding: 7px 15px;
  font-size: 13px;
}
.messages-form--inbox .message-select-all {
  color: var(--navy-800);
  background: #fff;
  border-color: #b7cae0;
}
.messages-form--inbox .message-select-all.is-all-selected {
  color: #fff;
  background: var(--navy-800);
  border-color: var(--navy-800);
}
.message-bulk-actions .sub-button:last-child {
  background: var(--pink-600);
  border-color: var(--pink-600);
}

@media (hover: hover) and (pointer: fine) {
  .messages-form--inbox .message-select-all:not(.is-all-selected):hover {
    color: var(--navy-900);
    background: var(--blue-100);
    border-color: #9bcdf8;
  }

  .messages-form--inbox .message-select-all.is-all-selected:hover {
    color: #fff;
    background: #123f72;
    border-color: #123f72;
  }

  .message-bulk-actions .sub-button:last-child:hover {
    background: #b92f58;
    border-color: #b92f58;
  }
}

.messages-form--inbox .message-delete-selected:disabled {
  color: #8795a5;
  background: #f5f7fa;
  border-color: #d7e0e9;
  box-shadow: none;
  opacity: 1;
  cursor: not-allowed;
}

.messages-form--inbox .message-delete-selected:not(:disabled) {
  color: #9e3451;
  background: #fff5f7;
  border-color: #e5a9b9;
  box-shadow: 0 3px 10px rgba(158, 52, 81, .08);
}

/*
 * Sent mail keeps the same calm hierarchy and bulk-action behaviour as the
 * inbox without borrowing inbox-only read/unread states.
 */
.message-table--outbox td:nth-child(2) a {
  color: #17466f;
  font-weight: 800;
}

.message-table--outbox td:nth-child(3) {
  color: #3b536b;
  font-weight: 700;
}

.message-table--outbox td:nth-child(4) {
  color: #61758a;
  font-variant-numeric: tabular-nums;
}

.messages-form--outbox .message-select-all {
  color: var(--navy-800);
  background: #fff;
  border-color: #b7cae0;
}

.messages-form--outbox .message-select-all.is-all-selected {
  color: #fff;
  background: var(--navy-800);
  border-color: var(--navy-800);
}

.messages-form--outbox .message-delete-selected:disabled {
  color: #8795a5;
  background: #f5f7fa;
  border-color: #d7e0e9;
  box-shadow: none;
  opacity: 1;
  cursor: not-allowed;
}

.messages-form--outbox .message-delete-selected:not(:disabled) {
  color: #9e3451;
  background: #fff5f7;
  border-color: #e5a9b9;
  box-shadow: 0 3px 10px rgba(158, 52, 81, .08);
}

@media (hover: hover) and (pointer: fine) {
  .messages-form--inbox .message-delete-selected:disabled:hover {
    color: #8795a5;
    background: #f5f7fa;
    border-color: #d7e0e9;
  }

  .messages-form--inbox .message-delete-selected:not(:disabled):hover {
    color: #8f2946;
    background: #fcebef;
    border-color: #dc91a6;
  }

  .messages-form--outbox .message-select-all:not(.is-all-selected):hover {
    color: var(--navy-900);
    background: var(--blue-100);
    border-color: #9bcdf8;
  }

  .messages-form--outbox .message-select-all.is-all-selected:hover {
    color: #fff;
    background: #123f72;
    border-color: #123f72;
  }

  .messages-form--outbox .message-delete-selected:disabled:hover {
    color: #8795a5;
    background: #f5f7fa;
    border-color: #d7e0e9;
  }

  .messages-form--outbox .message-delete-selected:not(:disabled):hover {
    color: #8f2946;
    background: #fcebef;
    border-color: #dc91a6;
  }
}

.new-message-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 250px);
  gap: 18px;
  align-items: start;
}
.new-message-editor,
.message-recipient {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--message-border);
  border-radius: var(--message-radius);
  box-shadow: var(--shadow-sm);
}
.new-message-editor h2,
.message-recipient h3 {
  margin: 0;
  padding: 13px 17px;
  color: #fff;
  font-size: 17px;
  line-height: 1.5;
  background: linear-gradient(135deg, var(--navy-900), var(--navy-800));
}
.form-row {
  display: grid;
  grid-template-columns: 142px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 13px 17px;
  border-bottom: 1px solid var(--line);
}
.form-row--stack { grid-template-columns: minmax(0, 1fr); }
.form-row--message { align-items: start; }
.page-account .site-main .new-message-form .form-row input[type="text"],
.page-account .site-main .new-message-form .form-row textarea {
  width: 100% !important;
  max-width: none;
  padding: 10px 12px;
  border-color: #b8c9dc;
  border-radius: 10px;
}
.page-account .site-main .new-message-form .form-row input[type="text"] {
  min-height: 46px;
}
.page-account .site-main .new-message-form .form-row textarea {
  min-height: 220px;
  line-height: 1.75;
}
.page-account .site-main .new-message-form .form-row input[type="text"]:focus,
.page-account .site-main .new-message-form .form-row textarea:focus {
  border-color: var(--blue-600);
  outline: 3px solid rgba(14, 124, 231, .13);
  outline-offset: 0;
}
.form-label { color: var(--navy-900); font-weight: 750; }
.message-recipient {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
  padding-bottom: 18px;
  text-align: center;
}
.message-recipient h3 { align-self: stretch; }
.message-recipient > a:first-of-type {
  margin-top: 3px;
  font-size: 15px;
  font-weight: 800;
}
.message-recipient__avatar {
  display: block;
  width: 96px;
  height: 96px !important;
  object-fit: cover;
  border: 3px solid #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 1px var(--message-border), var(--shadow-sm);
}
.form-actions {
  display: flex;
  justify-content: center;
  margin-top: 16px;
}
.new-message-form .form-actions .sub-button {
  min-width: 180px;
  min-height: 46px;
  padding: 9px 20px;
  font-size: 15px;
  border-radius: 10px;
}

.message-details {
  table-layout: fixed;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--message-border) !important;
  border-collapse: separate !important;
  border-spacing: 0;
  border-radius: var(--message-radius);
  box-shadow: var(--shadow-sm);
}

.message-view-layout {
  width: 100%;
  table-layout: auto !important;
  border-collapse: separate !important;
  border-spacing: 0;
}
.message-view-layout > tbody > tr {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 0;
  direction: rtl;
}
.message-view-layout > tbody > tr > td {
  display: block;
  width: auto !important;
  min-width: 0;
  direction: rtl;
}
.message-view-layout__content {
  grid-column: 1 / -1;
  width: 100% !important;
}
.message-details tr:last-child td { border-bottom: 0; }
.message-details td {
  border-color: #e6edf5;
}

.message-details__label {
  width: 158px !important;
  padding: 10px 14px !important;
  color: var(--ink-700);
  font-size: 13px;
  white-space: nowrap;
  background: #eef5fd;
}

.message-details__value {
  padding: 10px 14px !important;
  font-size: 14px;
  overflow-wrap: anywhere;
}
.message-details__title {
  padding: 11px 15px !important;
  color: #fff;
  font-size: 16px;
  font-weight: 800;
  text-align: right;
  background: var(--navy-800);
  border: 0 !important;
}
.message-details__body {
  min-height: 160px;
  padding: 22px 20px !important;
  font-size: 15px;
  line-height: 1.95;
  text-align: right;
  vertical-align: top;
  white-space: normal;
  overflow-wrap: anywhere;
}

.message-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 10px;
  margin: 0 0 14px;
  direction: rtl;
}
.message-actions--top { display: none !important; }
.message-actions--bottom {
  width: 100%;
  max-width: 760px;
  margin: 14px auto 0;
}
.message-action {
  display: inline-flex;
  flex: 1 1 0;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 46px;
  padding: 9px 15px;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.4;
  text-align: center;
  border: 1px solid transparent;
  border-radius: 14px;
  box-shadow: none;
  transition:
    transform .15s ease,
    color .15s ease,
    background .15s ease,
    border-color .15s ease,
    box-shadow .15s ease;
}
.message-action--reply {
  flex-grow: 1.25;
  color: #fff !important;
  background: var(--blue-600);
  border-color: #0872d7;
  box-shadow: 0 5px 12px rgba(8, 121, 232, .14);
}
.message-action--delete {
  color: #b7355d !important;
  background: #fff4f7;
  border-color: #edb4c5;
}
.message-action--block {
  color: var(--navy-900) !important;
  background: #fff;
  border-color: var(--message-border);
}
.message-action > img { display: none; }
.message-action > span { display: inline; }

@media (hover: hover) and (pointer: fine) {
  .message-action--reply:hover {
    color: #fff !important;
    background: #0872d7;
    box-shadow: 0 6px 14px rgba(8, 121, 232, .18);
    transform: translateY(-1px);
  }
  .message-action--delete:hover {
    color: #a82f54 !important;
    background: #ffeaf0;
    border-color: #e69ab2;
    transform: translateY(-1px);
  }
  .message-action--block:hover {
    color: var(--navy-900) !important;
    background: #f5f8fc;
    border-color: #cbd9e7;
    transform: translateY(-1px);
  }
}

.message-action:focus-visible {
  outline: 3px solid rgba(8, 121, 232, .2);
  outline-offset: 2px;
}

.message-view-layout__sender > .message-sender-card { display: none; }
.message-sender-card-mobile {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  width: 100%;
  min-width: 0;
  padding: 13px;
  overflow: hidden;
  direction: rtl;
  background: linear-gradient(145deg, #fff, #f6faff);
  border: 1px solid var(--message-border);
  border-radius: var(--message-radius);
  box-shadow: var(--shadow-sm);
}
.message-sender-card-mobile__avatar {
  display: block;
  width: 72px;
  height: 72px;
  overflow: hidden;
  border: 1px solid #cfe0f1;
  border-radius: 50%;
  background: var(--surface-soft);
}
.message-sender-card-mobile__avatar img {
  display: block;
  width: 72px;
  height: 72px !important;
  object-fit: cover;
}
.message-sender-card-mobile__info {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.message-sender-card-mobile__eyebrow,
.message-sender-card-mobile__label {
  color: var(--ink-500);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
}
.message-sender-card-mobile__name {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.message-sender-card-mobile__name img {
  flex: 0 0 auto;
  width: 19px;
  height: 18px !important;
  object-fit: contain;
}
.message-sender-card-mobile__value {
  min-width: 0;
  color: var(--navy-900);
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

/* Pager */
.pagestd, .pages {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 36px;
  margin: 3px;
  padding: 4px 9px;
  color: #fff;
  background: var(--blue-600);
  border: 1px solid var(--blue-600);
  border-radius: 7px;
}

/* Footer */
.site-footer { clear: both; color: #fff; background: var(--navy-950); }
.footer-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 20px;
  padding: 12px 20px;
  background: var(--pink-600);
}
.footer-links a { color: #fff !important; }
.footer-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 84px;
  padding: 20px clamp(18px, 3vw, 42px);
}
.footer-copyright { text-align: right; }

/* Medium screens */
@media (max-width: 1199px) {
  .site-layout.has-two-sidebars {
    grid-template-columns: minmax(230px, 280px) minmax(0, 1fr);
    grid-template-areas: "right main" "left main";
  }
  .member-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .account-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 899px) {
  .site-layout.no-sidebars {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "main";
  }

  .site-layout.has-right-sidebar {
    grid-template-columns: minmax(112px, 32vw) minmax(0, 1fr);
    grid-template-areas: "right main";
  }

  .site-layout.has-left-sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(112px, 32vw);
    grid-template-areas: "main left";
  }

  .site-layout.has-two-sidebars {
    grid-template-columns: minmax(112px, 32vw) minmax(0, 1fr);
    grid-template-areas: "right main" "left main";
  }

  .site-sidebar { width: 100%; }
  .BlocksCont { max-width: none; }
}

/* Mobile navigation and page layouts */
@media (max-width: 767px) {
  .registration-start {
    gap: 12px;
    margin: 0;
  }
  .registration-terms-card,
  .registration-type-card {
    border-radius: 15px;
    box-shadow: 0 5px 18px rgba(7, 43, 83, .06);
  }
  .registration-card-heading { padding: 15px; }
  .registration-card-heading__eyebrow,
  .registration-type-heading__step {
    min-height: 23px;
    padding: 2px 8px;
    font-size: 10.5px;
  }
  .registration-card-heading h2 {
    margin-top: 7px;
    font-size: 19px;
  }
  .registration-card-heading p {
    font-size: 12px;
    line-height: 1.65;
  }
  .registration-terms-content {
    max-height: 220px;
    padding: 14px 14px 12px;
    font-size: 13.5px;
    line-height: 1.8;
  }
  .registration-terms-content h2 {
    gap: 7px;
    margin-bottom: 7px;
    font-size: 16px;
  }
  .registration-terms-content h2:not(:first-child) { margin-top: 16px; }
  .registration-terms-content h2::before { width: 4px; height: 19px; }
  .registration-terms-content ul {
    gap: 5px;
    padding-right: 19px;
  }
  .registration-terms-content li {
    padding-inline-start: 2px;
    line-height: 1.75;
  }
  .registration-consent {
    grid-template-columns: 23px minmax(0, 1fr);
    gap: 9px;
    padding: 12px 13px;
  }
  .registration-consent__control { width: 21px; height: 21px; border-radius: 6px; }
  .registration-consent input:checked + .registration-consent__control::after {
    top: 2px;
    right: 6px;
  }
  .registration-consent__copy strong { font-size: 13px; }
  .registration-consent__copy small { font-size: 10.5px; }
  .registration-terms-details summary {
    min-height: 42px;
    padding: 8px 13px;
    font-size: 12px;
  }
  .registration-terms-details summary::after {
    width: 22px;
    height: 22px;
    font-size: 16px;
  }
  .registration-type-card { width: 100%; }
  .registration-type-heading { padding: 13px 12px 11px; }
  .registration-type-heading h2 {
    margin: 5px 0 2px;
    font-size: 18px;
  }
  .registration-type-heading p { font-size: 11.5px; }
  .registration-type-grid {
    gap: 8px;
    padding: 10px;
  }
  .registration-type-option {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto;
    gap: 7px;
    justify-items: center;
    min-height: 120px;
    padding: 9px 7px 8px;
    text-align: center;
    border-radius: 12px;
  }
  .registration-type-option__avatar {
    width: 58px;
    height: 58px;
  }
  .registration-type-option__avatar img {
    width: 52px;
    height: 52px !important;
  }
  .registration-type-option__copy { gap: 1px; }
  .registration-type-option__copy small { font-size: 9.5px; }
  .registration-type-option__copy strong { font-size: 13.5px; }
  .registration-type-option__arrow { display: none; }

  html {
    scroll-padding-top: calc(67px + env(safe-area-inset-top, 0px));
  }
  .site-header {
    padding-top: calc(59px + env(safe-area-inset-top, 0px));
  }
  .primary-nav {
    position: fixed;
    z-index: 60;
    inset-inline: 0;
    top: 0;
    min-height: 54px;
    padding-top: env(safe-area-inset-top, 0px);
    transform: translateY(0);
    transition: transform .22s ease;
    will-change: transform;
  }
  .primary-nav.is-scroll-hidden {
    pointer-events: none;
    transform: translateY(calc(-100% - 2px));
  }
  .primary-nav .nav-bar {
    display: grid;
    grid-template-columns: minmax(76px, .68fr) minmax(0, 1.7fr) 48px;
    grid-template-areas: "home account site";
    direction: rtl;
    align-items: stretch;
    gap: 6px;
    min-height: 54px;
    padding: 6px 8px;
  }
  .primary-nav .mobile-header-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 0;
    min-height: 42px !important;
    padding: 6px 8px !important;
    color: #fff;
    font-family: inherit;
    font-size: clamp(10.5px, 3vw, 12.5px);
    font-weight: 800;
    line-height: 1.35;
    white-space: nowrap;
    background: rgba(255, 255, 255, .08) !important;
    border: 1px solid rgba(255, 255, 255, .32) !important;
    border-radius: 10px;
  }
  .primary-nav .mobile-header-action[aria-expanded="true"] {
    background: var(--blue-600) !important;
    border-color: #8ac8ff !important;
  }
  .mobile-header-action__icon { flex: 0 0 auto; font-size: 16px; line-height: 1; }
  .mobile-home-link {
    grid-area: home;
    font-size: clamp(10.5px, 2.8vw, 12px) !important;
    text-decoration: none;
  }
  .mobile-home-link__icon {
    display: inline-grid;
    place-items: center;
  }
  .mobile-home-link__icon svg {
    display: block;
    width: 15px;
    height: 15px;
  }
  .mobile-messages-link[hidden] {
    display: none !important;
  }
  .mobile-messages-link {
    position: relative;
    grid-area: messages;
    gap: 3px !important;
    padding-inline: 5px !important;
    text-decoration: none;
  }
  .mobile-messages-link__icon {
    display: inline-grid;
    place-items: center;
  }
  .mobile-messages-link__icon svg {
    display: block;
    width: 18px;
    height: 18px;
  }
  .mobile-messages-link__badge {
    display: inline-grid;
    place-items: center;
    min-width: 18px;
    height: 18px;
    padding: 0 4px;
    color: #fff;
    font-size: 9.5px;
    font-weight: 850;
    line-height: 1;
    background: var(--pink-600);
    border-radius: 999px;
  }
  .primary-nav .mobile-site-trigger {
    grid-area: site;
    gap: 0;
    padding-inline: 5px !important;
    font-size: 20px;
  }
  .mobile-header-action > span:last-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
  .primary-nav .mobile-account-trigger {
    grid-area: account;
    white-space: normal;
  }
  .primary-nav .nav-bar.is-authenticated {
    grid-template-columns: minmax(72px, .68fr) 52px minmax(0, 1.45fr) 46px;
    grid-template-areas: "home messages account site";
  }
  .primary-nav .nav-bar.is-authenticated .mobile-account-trigger {
    font-size: clamp(11px, 3.2vw, 13px);
  }
  .mobile-account-trigger > span:last-child { overflow: visible; text-overflow: clip; }
  .primary-nav > ul {
    display: none !important;
  }
  .site-layout { gap: 9px; padding: 12px 7px 20px; }
  .page-home .site-layout { padding-top: 14px; }
  .site-layout.has-right-sidebar,
  .site-layout.has-two-sidebars {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "main";
  }
  .site-layout.has-two-sidebars .site-sidebar-left { display: none !important; }
  body.mobile-panel-open { overflow: hidden; }
  .mobile-panel-backdrop {
    position: fixed;
    z-index: 70;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0 !important;
    padding: 0 !important;
    background: rgba(6, 29, 59, .5) !important;
    border: 0 !important;
    border-radius: 0;
    opacity: 0;
    pointer-events: none;
    transition: none;
  }
  .mobile-panel-backdrop.is-visible {
    display: block;
    opacity: 1;
    pointer-events: auto;
  }
  .site-sidebar-right {
    position: fixed;
    z-index: 80;
    inset-block: 0;
    inset-inline-end: 0;
    display: none !important;
    width: min(88vw, 360px) !important;
    max-width: 100%;
    height: 100vh;
    height: 100dvh;
    padding: 0 10px 22px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--surface-soft);
    box-shadow: -16px 0 42px rgba(6, 29, 59, .22);
    transform: none;
    visibility: visible;
    transition: none;
    -webkit-overflow-scrolling: touch;
  }
  .site-sidebar-right.is-mobile-open {
    display: block !important;
  }
  .mobile-drawer-header {
    position: sticky;
    z-index: 2;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 58px;
    margin: 0 -10px 10px;
    padding: 8px 12px;
    color: #fff;
    background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
    box-shadow: 0 2px 10px rgba(6, 29, 59, .13);
  }
  .mobile-drawer-title { min-width: 0; font-size: 15px; overflow-wrap: anywhere; }
  .mobile-drawer-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    min-height: 38px !important;
    padding: 0 !important;
    color: #fff;
    font-size: 26px;
    line-height: 1;
    background: rgba(255, 255, 255, .12) !important;
    border: 1px solid rgba(255, 255, 255, .4) !important;
    border-radius: 9px;
  }
  .site-sidebar-right .BlocksCont { display: none; margin-bottom: 10px; }
  .site-sidebar-right[data-mobile-panel="site"] .mobile-panel-block--site,
  .site-sidebar-right[data-mobile-panel="account"] .mobile-panel-block--account { display: block; }
  .site-sidebar-right.is-mobile-open .blk1-head_outer,
  .site-sidebar-right.is-mobile-open .blk2-head_outer,
  .site-sidebar-right.is-mobile-open .blk3-head_outer,
  .site-sidebar-right.is-mobile-open .blk4-head_outer,
  .site-sidebar-right.is-mobile-open .blk1-footer,
  .site-sidebar-right.is-mobile-open .blk2-footer,
  .site-sidebar-right.is-mobile-open .blk3-footer,
  .site-sidebar-right.is-mobile-open .blk4-footer { display: none; }
  .site-sidebar-right.is-mobile-open .blk1-body_outer,
  .site-sidebar-right.is-mobile-open .blk2-body_outer,
  .site-sidebar-right.is-mobile-open .blk3-body_outer,
  .site-sidebar-right.is-mobile-open .blk4-body_outer { overflow: visible; border-radius: 12px; box-shadow: var(--shadow-sm); }
  .site-sidebar-right.is-mobile-open .blk1-body_in,
  .site-sidebar-right.is-mobile-open .blk2-body_in,
  .site-sidebar-right.is-mobile-open .blk3-body_in,
  .site-sidebar-right.is-mobile-open .blk4-body_in { padding: 12px; }
  .site-sidebar-right.is-mobile-open .sidebar-menu a { min-height: 44px; padding: 8px 10px; font-size: 13px; }
  .site-sidebar-right.is-mobile-open .sidebar-login-form__field > span,
  .site-sidebar-right.is-mobile-open .sidebar-login-form__remember,
  .site-sidebar-right.is-mobile-open .sidebar-login-form__recover,
  .site-sidebar-right.is-mobile-open .sidebar-login-form__register { font-size: 12px; }
  .site-sidebar-right.is-mobile-open .sidebar-login-form__register {
    display: block;
    margin-top: 8px;
    padding: 9px 10px;
    color: var(--navy-900);
    font-weight: 800;
    text-align: center;
    background: var(--blue-100);
    border: 1px solid #badcfb;
    border-radius: 9px;
  }

  /* Mobile profile: keep the legacy tab panel out of a large clipped paint layer. */
  body.page-profile { touch-action: pan-y; }
  .page-profile .usual,
  .page-profile #usual2 { overflow: visible; }
  .page-profile .usual > ul,
  .page-profile #usual2 > ul { border-radius: var(--radius-md) var(--radius-md) 0 0; }
  .page-profile .usual > div[id^="tabs"],
  .page-profile #usual2 > div[id^="tabs"] { border-radius: 0 0 var(--radius-md) var(--radius-md); }
  .page-profile .site-container,
  .page-profile .profile-hero,
  .page-profile .profile-actions a { box-shadow: none; }
  .page-profile .site-main a { transition: none !important; }

  /* The closed drawer is not painted, and the legacy profile plugins do not track mobile scrolling. */
  .site-sidebar .BlocksCont { margin-bottom: 10px; }
  .site-sidebar .blk1-head_outer,
  .site-sidebar .blk2-head_outer,
  .site-sidebar .blk3-head_outer,
  .site-sidebar .blk4-head_outer,
  .site-sidebar .blk1-head_in,
  .site-sidebar .blk2-head_in,
  .site-sidebar .blk3-head_in,
  .site-sidebar .blk4-head_in { min-height: 42px; }
  .site-sidebar .blk1-head_in,
  .site-sidebar .blk2-head_in,
  .site-sidebar .blk3-head_in,
  .site-sidebar .blk4-head_in { padding: 7px 8px; font-size: 13px; text-align: right; }
  .site-sidebar .blk1-body_in,
  .site-sidebar .blk2-body_in,
  .site-sidebar .blk3-body_in,
  .site-sidebar .blk4-body_in { padding: 10px 7px 13px; font-size: 12px; }
  .site-sidebar .sidebar-menu__intro,
  .site-sidebar .sidebar-login-form__intro { display: none; }
  .site-sidebar .sidebar-menu ul { gap: 4px; }
  .site-sidebar .sidebar-menu a { min-height: 38px; padding: 6px; font-size: 11px; overflow-wrap: normal; }
  .site-sidebar .sidebar-menu a::after { display: none; }
  .site-sidebar .sidebar-account-menu img { width: 18px; height: 18px !important; }
  .site-sidebar .sidebar-menu__badge { min-width: 20px; height: 20px; padding: 0 4px; font-size: 10px; }
  .site-sidebar .sidebar-login-form { gap: 8px; }
  .site-sidebar .sidebar-login-form__field > span,
  .site-sidebar .sidebar-login-form__remember,
  .site-sidebar .sidebar-login-form__recover { font-size: 10px; }
  .site-sidebar input[type="text"],
  .site-sidebar input[type="password"],
  .site-sidebar input[type="email"],
  .site-sidebar select,
  .site-sidebar textarea { min-height: 36px; padding: 6px; font-size: 12px; }
  .site-sidebar-right.is-mobile-open #sidebar-login-username,
  .site-sidebar-right.is-mobile-open #sidebar-login-password {
    min-height: 48px;
    padding: 10px 12px;
    font-size: 16px;
    line-height: 1.5;
  }
  .site-sidebar input[type="submit"],
  .site-sidebar input[type="button"],
  .site-sidebar button { min-height: 36px; padding: 6px 8px; font-size: 12px; }

  /* Guest account drawer: a compact, focused login and signup panel. */
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] {
    inset-block-end: auto;
    height: auto;
    max-height: 100vh;
    max-height: 100dvh;
    padding-bottom: max(18px, env(safe-area-inset-bottom));
    background: #f7faff;
    border-bottom-right-radius: 20px;
    box-shadow: 16px 0 42px rgba(6, 29, 59, .22);
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .mobile-drawer-header {
    min-height: 62px;
    margin-bottom: 12px;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .mobile-drawer-title {
    font-size: 16px;
    font-weight: 800;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .mobile-drawer-close {
    flex-basis: 44px;
    width: 44px;
    min-height: 44px !important;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .BlocksCont {
    margin-bottom: 0;
    overflow: visible;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .blk1-body_outer,
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .blk2-body_outer,
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .blk3-body_outer,
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .blk4-body_outer {
    border: 1px solid #d6e2f0;
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(7, 44, 87, .08);
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .blk1-body_in,
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .blk2-body_in,
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .blk3-body_in,
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .blk4-body_in {
    padding: 16px;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form {
    gap: 14px;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__field {
    gap: 7px;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__field > span {
    color: var(--navy-900);
    font-size: 14px;
    font-weight: 750;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] #sidebar-login-username,
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] #sidebar-login-password {
    min-height: 50px;
    padding: 11px 13px;
    color: var(--navy-950);
    font-size: 16px;
    line-height: 1.5;
    background: #fff;
    border: 1px solid #bdcde0;
    border-radius: 12px;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] #sidebar-login-username:focus,
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] #sidebar-login-password:focus {
    border-color: var(--blue-500);
    box-shadow: 0 0 0 3px rgba(21, 145, 244, .14);
    outline: 0;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__assist {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
    flex-wrap: nowrap;
    min-height: 44px;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__remember,
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__recover {
    min-height: 44px;
    margin: 0;
    color: var(--ink-700);
    font-size: 14px;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__recover {
    color: #1769aa;
    font-weight: 650;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__remember input {
    width: 22px;
    height: 22px;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form .sub-button {
    min-height: 50px;
    padding: 10px 14px;
    color: #fff;
    font-size: 16px;
    background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
    border: 0;
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(8, 121, 232, .16);
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__divider {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 12px 0;
    color: var(--ink-500);
    font-size: 13px;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__divider::before,
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__divider::after {
    flex: 1 1 auto;
    height: 1px;
    content: "";
    background: #dbe5f1;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__register {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    margin: 0;
    padding: 10px 14px;
    color: var(--navy-900);
    font-size: 16px;
    font-weight: 800;
    text-align: center;
    background: #fff4f7;
    border: 1px solid #efb8c8;
    border-radius: 12px;
  }
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__register:hover,
  .site-sidebar-right.is-mobile-open.has-login-form[data-mobile-panel="account"] .sidebar-login-form__register:focus-visible {
    color: var(--navy-950);
    background: #ffeaf0;
    border-color: var(--pink-500);
  }
  .cent { min-height: 52px; border-radius: 11px 11px 0 0; }
  .centhead { min-height: 52px; padding: 10px 14px; font-size: 19px; }
  .centimg1--member-filter { gap: 4px; }
  .centimg1--member-filter > .member-filter {
    gap: 4px;
    margin-inline-end: 10px;
  }
  body.theme-noimages-3 .centimg1--member-filter .member-filter button {
    min-width: 0;
    min-height: 30px;
    padding: 4px 8px;
    font-size: 10.5px;
  }
  .centervalue { padding: 10px; }
  .footer-main { flex-direction: column; align-items: stretch; text-align: center; }
  .footer-copyright { text-align: center; }
  .account-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .account-tile { min-height: 145px; padding: 12px 7px; font-size: 12px; }
  .account-tile img { max-width: 78px; height: 66px !important; }

  .account-welcome {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 2px 0 16px;
    border-radius: 11px;
  }
  .account-welcome__item {
    min-height: 44px;
    padding: 6px 8px;
    font-size: 11.5px;
    border-inline-end: 0;
    border-bottom: 1px solid var(--line);
  }
  .account-welcome__identity {
    grid-column: 1 / -1;
    min-height: 50px;
    background: var(--surface-soft);
  }
  .account-welcome__identity strong { font-size: 12.5px; }
  .account-welcome__last-login {
    grid-column: 1 / -1;
    border-bottom: 0;
  }
  .account-welcome__membership { border-inline-start: 1px solid var(--line); }

  /* Message pages only: retain the useful membership status and remove repeated account details. */
  .page-account-messages .account-welcome {
    display: block;
    margin: 0 0 10px;
    overflow: visible;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  .page-account-messages .account-welcome__identity,
  .page-account-messages .account-welcome__link,
  .page-account-messages .account-welcome__last-login {
    display: none;
  }
  .page-account-messages .account-welcome__membership {
    display: flex;
    justify-content: space-between;
    min-height: 40px;
    padding: 7px 12px;
    font-size: 12px;
    background: var(--blue-100);
    border: 1px solid #cfe3f8;
    border-radius: 10px;
  }
  .page-account-messages .account-welcome__membership span,
  .page-account-messages .account-welcome__membership strong {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }

  /* Membership comparison page only: show the current membership without repeated account details. */
  .page-membership-comparison .account-welcome {
    display: block;
    margin: 0 0 10px;
    overflow: visible;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  .page-membership-comparison .account-welcome__identity,
  .page-membership-comparison .account-welcome__link,
  .page-membership-comparison .account-welcome__last-login {
    display: none;
  }
  .page-membership-comparison .account-welcome__membership {
    display: flex;
    justify-content: space-between;
    min-height: 40px;
    padding: 7px 12px;
    font-size: 12px;
    background: var(--blue-100);
    border: 1px solid #cfe3f8;
    border-radius: 10px;
  }
  .page-membership-comparison .account-welcome__membership span,
  .page-membership-comparison .account-welcome__membership strong {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }

  .mailbox-shortcuts {
    gap: 8px;
    width: 100%;
    margin: 2px auto 16px;
  }
  .page-account-messages .mailbox-shortcuts { margin-top: 0; }
  .mailbox-shortcut {
    flex-direction: column;
    gap: 4px;
    min-height: 86px;
    padding: 8px 6px;
    font-size: 12.5px;
    line-height: 1.45;
    background: linear-gradient(180deg, #fff, #f8fbff);
    border-radius: 12px;
    box-shadow: none;
  }
  .mailbox-shortcut img { width: 46px; height: 46px !important; }

  .page-account .messages-form {
    min-width: 0;
    font-size: 13px;
  }
  .message-table,
  .message-table tbody,
  .message-table tr,
  .message-table td {
    display: block;
    width: 100% !important;
    min-width: 0;
  }
  .message-table {
    table-layout: auto;
    border: 0;
    background: transparent;
  }
  .message-table caption {
    display: block;
    width: 100%;
    min-width: 0;
    margin: 0 0 8px;
    padding: 0;
    font-size: 15px;
    line-height: 1.4;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
    background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
    border-radius: 10px;
  }
  .message-table__caption-inner {
    flex-wrap: wrap;
    gap: 7px 10px;
    min-height: 48px;
    padding: 9px 12px;
  }
  .message-table__title { font-size: 15px; }
  .message-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
  .message-table tbody { display: grid; gap: 10px; }
  .message-table tr {
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 11px;
    box-shadow: none;
  }
  .message-table tr.message-unread {
    background: #edf6ff;
    border-color: #b4d7f5;
    box-shadow: 0 4px 14px rgba(11, 120, 213, .07);
  }
  .message-table td {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 8px 9px;
    font-size: 13px;
    line-height: 1.55;
    text-align: right !important;
    overflow-wrap: normal;
    word-break: normal;
    border: 0;
    border-bottom: 1px solid var(--line);
  }
  .message-table td:last-child { border-bottom: 0; }
  .message-table td::before {
    content: attr(data-label);
    color: var(--ink-500);
    font-size: 11.5px;
    font-weight: 700;
    line-height: 1.4;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
  .message-table td > a,
  .message-table .message-subject-content a {
    min-width: 0;
    font-size: 13px;
    line-height: 1.55;
    overflow-wrap: anywhere;
  }
  .message-table td > a:focus-visible,
  .message-table .message-subject-content a:focus-visible {
    outline: 2px solid var(--blue-600);
    outline-offset: 2px;
    border-radius: 4px;
  }
  .message-table .message-subject-content {
    flex-wrap: wrap;
    gap: 6px;
  }
  .message-table .message-status-badge {
    min-height: 21px;
    padding: 2px 7px;
    font-size: 10px;
  }
  .message-table td input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
  }
  .message-bulk-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
  }
  .message-bulk-actions .sub-button {
    width: 100%;
    min-height: 38px;
    padding: 7px 8px;
    font-size: 12px;
    white-space: normal;
  }
  .page-account-messages .site-main { touch-action: pan-y; }
  .page-account-messages .message-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin: 0 0 10px;
  }
  .page-account-messages .message-actions--bottom {
    display: grid;
    width: 100%;
    max-width: none;
    margin: 12px 0 0;
  }
  .page-account-messages .message-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 46px;
    padding: 9px 11px;
    font-size: 13.5px;
    font-weight: 800;
    line-height: 1.4;
    text-align: center;
    border: 1px solid transparent;
    border-radius: 14px;
    box-shadow: none;
  }
  .page-account-messages .message-action--reply {
    grid-column: 1 / -1;
    color: #fff !important;
    background: var(--blue-600);
    border-color: #0872d7;
    box-shadow: 0 5px 12px rgba(8, 121, 232, .14);
  }
  .page-account-messages .message-action--delete {
    color: #b7355d !important;
    background: #fff4f7;
    border-color: #edb4c5;
  }
  .page-account-messages .message-action--delete:last-child {
    grid-column: 1 / -1;
  }
  .page-account-messages .message-action--block {
    color: var(--navy-900) !important;
    background: #fff;
    border-color: var(--line);
  }
  .page-account-messages .message-action > img { display: none; }
  .page-account-messages .message-action > span { display: inline; }

  .message-view-layout,
  .message-view-layout > tbody,
  .message-view-layout > tbody > tr,
  .message-view-layout > tbody > tr > td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
  }
  .message-view-layout {
    table-layout: auto !important;
    border-spacing: 0;
  }
  .message-view-layout > tbody > tr > td + td { margin-top: 10px; }
  .message-details,
  .message-details > tbody {
    display: block;
    width: 100% !important;
    min-width: 0;
  }
  .message-details {
    table-layout: auto !important;
    overflow: hidden;
    font-size: 13px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 14px;
    box-shadow: 0 4px 14px rgba(6, 29, 59, .055);
  }
  .message-details > tbody > tr {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    width: 100%;
    min-width: 0;
  }
  .message-details td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    border: 0;
    border-bottom: 1px solid var(--line);
  }
  .message-details__label {
    width: auto !important;
    min-width: 0 !important;
    padding: 9px 8px !important;
    color: var(--ink-500);
    font-size: 11.5px;
    font-weight: 700;
    line-height: 1.45;
    white-space: nowrap;
    background: var(--blue-100);
  }
  .message-details__value {
    padding: 9px 10px !important;
    font-size: 13px;
    line-height: 1.55;
    background: #fff;
  }
  .message-details__title {
    grid-column: 1 / -1;
    padding: 10px 12px !important;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.45;
    background: var(--navy-800);
  }
  .message-details__body {
    grid-column: 1 / -1;
    min-height: 0;
    padding: 16px 14px 18px !important;
    font-size: 14px;
    line-height: 1.9;
    background: #fff;
    border-bottom: 0 !important;
  }

  .message-view-layout__sender > .message-sender-card { display: none; }
  .message-sender-card-mobile {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    align-items: center;
    gap: 9px;
    width: 100%;
    min-width: 0;
    padding: 8px;
    overflow: hidden;
    direction: rtl;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: none;
  }
  .message-sender-card-mobile__avatar {
    display: block;
    width: 58px;
    height: 58px;
    overflow: hidden;
    border: 1px solid #cfe0f1;
    border-radius: 50%;
    background: var(--surface-soft);
  }
  .message-sender-card-mobile__avatar img {
    display: block;
    width: 58px;
    height: 58px !important;
    object-fit: cover;
  }
  .message-sender-card-mobile__info {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 3px 7px;
    min-width: 0;
  }
  .message-sender-card-mobile__eyebrow,
  .message-sender-card-mobile__label {
    color: var(--ink-500);
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.4;
    white-space: nowrap;
  }
  .message-sender-card-mobile__eyebrow { grid-column: 1 / -1; }
  .message-sender-card-mobile__name {
    grid-column: 1 / -1;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.45;
    overflow-wrap: anywhere;
  }
  .message-sender-card-mobile__name img {
    flex: 0 0 auto;
    width: 19px;
    height: 18px !important;
    object-fit: contain;
  }
  .message-sender-card-mobile__value {
    min-width: 0;
    color: var(--navy-900);
    font-size: 12px;
    line-height: 1.45;
    overflow-wrap: anywhere;
  }
  .new-message-form {
    width: 100%;
    min-width: 0;
    -webkit-text-size-adjust: 100%;
  }
  .new-message-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }
  .new-message-editor { order: 2; }
  .new-message-editor h2, .message-recipient h3 { padding: 9px 11px; font-size: 14px; }
  .new-message-editor .form-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 5px;
    padding: 9px 10px;
    font-size: 13px;
  }
  .new-message-editor .form-row--recipient { display: none; }
  .page-account .site-main .new-message-form .form-row input[type="text"],
  .page-account .site-main .new-message-form .form-row textarea {
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px 11px;
    color: var(--ink-900);
    font-size: 16px !important;
    line-height: 1.55;
    background: #fff;
    border: 1px solid #b9cde0;
    border-radius: 10px;
    -webkit-appearance: none;
    appearance: none;
    touch-action: manipulation;
  }
  .page-account .site-main .new-message-form .form-row input[type="text"] {
    min-height: 44px;
  }
  .page-account .site-main .new-message-form .form-row textarea {
    min-height: 150px;
    resize: vertical;
    scroll-margin-bottom: 48vh;
  }
  .page-account .site-main .new-message-form .form-row input[type="text"]:focus,
  .page-account .site-main .new-message-form .form-row textarea:focus {
    border-color: var(--blue-600);
    outline: 3px solid rgba(14, 124, 231, .14);
    outline-offset: 0;
  }
  .new-message-form .form-actions {
    margin-top: 10px;
  }
  .new-message-form .form-actions .sub-button {
    width: min(100%, 260px);
    min-height: 46px;
    padding: 9px 16px;
    font-size: 15px;
  }
  .message-recipient {
    order: 1;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 2px 9px;
    padding: 9px;
    text-align: right;
    border-inline-start: 3px solid var(--blue-600);
  }
  .message-recipient h3 {
    grid-column: 2;
    align-self: end;
    margin: 0;
    padding: 0;
    color: var(--ink-500);
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.4;
    background: transparent;
  }
  .message-recipient > a:first-of-type {
    grid-column: 2;
    align-self: center;
    min-width: 0;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.4;
    overflow-wrap: anywhere;
  }
  .message-recipient > .member-card__flag {
    grid-column: 2;
    justify-self: start;
    width: 18px;
    height: 17px !important;
  }
  .message-recipient > a[aria-label] {
    grid-column: 1;
    grid-row: 1 / span 3;
    align-self: center;
  }
  .message-recipient__avatar {
    width: 58px;
    height: 58px !important;
    box-shadow: none;
  }

  /* Mobile-only paid plans comparison: free is already owned and is omitted. */
  .membership-comparison {
    width: 100% !important;
    table-layout: auto !important;
    overflow: visible;
    background: transparent;
    border: 0;
  }
  .membership-comparison__title {
    min-height: 46px;
    padding: 10px 12px;
    font-size: 16px;
    line-height: 1.5;
    text-align: center;
    border-radius: 10px;
  }
  .membership-comparison--compact .membership-comparison__body { display: none !important; }
  .membership-comparison-mobile {
    display: block;
    width: 100%;
    min-width: 0;
    margin: 10px 0 0;
    overflow: hidden;
    direction: rtl;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 11px;
    box-shadow: none;
  }
  .membership-comparison-mobile__heads,
  .membership-comparison-mobile__values {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    min-width: 0;
  }
  .membership-comparison-mobile__head {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 42px;
    padding: 8px 5px;
    color: #fff;
    font-size: 13.5px;
    font-weight: 800;
    line-height: 1.4;
    text-align: center;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
  .membership-comparison-mobile__head--silver { background: var(--navy-800); }
  .membership-comparison-mobile__head--gold { background: var(--pink-600); }
  .membership-comparison-mobile__head + .membership-comparison-mobile__head { border-inline-start: 1px solid rgba(255, 255, 255, .55); }
  .membership-comparison-mobile__feature { margin: 0; border-bottom: 1px solid var(--line); }
  .membership-comparison-mobile__feature:last-child { border-bottom: 0; }
  .membership-comparison-mobile__label {
    min-height: 36px;
    margin: 0;
    padding: 7px 9px;
    color: var(--navy-900);
    font-size: 12px;
    font-weight: 750;
    line-height: 1.55;
    text-align: right;
    white-space: normal;
    overflow-wrap: normal;
    word-break: normal;
    background: var(--blue-100);
    border-bottom: 1px solid #fff;
  }
  .membership-comparison-mobile__value {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 40px;
    padding: 6px 5px;
    color: var(--ink-900);
    font-size: 12px;
    line-height: 1.45;
    text-align: center;
    white-space: normal;
    overflow-wrap: normal;
    word-break: normal;
    background: #fff;
  }
  .membership-comparison-mobile__value + .membership-comparison-mobile__value { border-inline-start: 1px solid var(--line); }
  .membership-comparison-mobile__value > img {
    width: 19px;
    max-width: 19px;
    height: 19px !important;
    object-fit: contain;
  }
  .membership-comparison-mobile__value > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    max-width: 100%;
    min-height: 34px;
    padding: 3px;
  }
  .membership-comparison-mobile__value > a img {
    width: auto;
    max-width: 80px;
    height: auto !important;
  }

  .page-register .site-main form > table tr,
  .page-register .site-main form > div > table tr,
  .page-account .site-main form:not(.messages-form):not(.new-message-form) > table tr,
  .page-account .site-main form:not(.messages-form):not(.new-message-form) > div > table tr,
  .page-contact .site-main form > table tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .page-search .site-main form > table > tbody > tr,
  .page-search .site-main form > table > tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .page-search .site-main form > table > tbody > tr > td,
  .page-search .site-main form > table > tr > td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0;
  }

  .page-search .site-main form table table { width: 100% !important; table-layout: fixed; }

  .page-login .site-main form table tr { display: grid; grid-template-columns: minmax(0, 1fr); }
  .page-login .site-main form table td { display: block; width: 100% !important; min-width: 0 !important; height: auto !important; padding: 8px 10px; }

  .search-result-card__grid { grid-template-columns: minmax(0, 1fr); padding: 13px; }
  .search-result-card__details { grid-template-columns: minmax(0, 1fr); }
  .search-result-card__actions { grid-column: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .search-result-card__actions a { justify-content: center; text-align: center; }

  .page-register .site-main form td,
  .page-account .site-main form:not(.messages-form):not(.new-message-form) td,
  .page-contact .site-main form td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    padding: 8px 10px;
  }

  .page-register .site-main form .r-td,
  .page-account .site-main form:not(.messages-form):not(.new-message-form) .r-td,
  .page-contact .site-main form .r-td { border-radius: 6px 6px 0 0; }

  .page-profile .site-main > table,
  .page-profile .centervalue > table,
  .page-account .site-main > table,
  .page-account .centervalue > table { width: 100% !important; table-layout: fixed; }

  .profile-hero {
    grid-template-columns: 72px minmax(0, 1fr);
    grid-template-areas: "avatar info" "media media";
    gap: 8px 10px;
    align-items: start;
    margin-bottom: 10px;
    padding: 9px;
    border-radius: 13px;
  }
  .profile-hero__info h1 {
    min-height: 30px;
    margin: 0 0 7px;
    font-size: 18px;
    line-height: 1.35;
  }
  .profile-hero__info h1 img { width: 16px; height: 16px !important; }
  .profile-hero__avatar { align-self: start; }
  .profile-hero__avatar > img,
  .profile-hero__avatar > a > img {
    width: 72px;
    height: 72px !important;
    border-width: 3px;
  }
  .profile-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .profile-facts > div {
    grid-column: auto !important;
    min-height: 46px;
    padding: 5px 7px;
  }
  .profile-facts > div:last-child:nth-child(odd) { grid-column: 1 / -1 !important; }
  .profile-facts .profile-fact--nationality { grid-column: auto; }
  .profile-facts .profile-fact--residence {
    grid-column: auto;
    display: block;
    text-align: right;
  }
  .profile-fact--residence dd {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-top: 2px;
  }
  .profile-fact--residence img { display: block; width: 26px; height: 26px !important; object-fit: contain; }
  .profile-facts dt { font-size: 10px; line-height: 1.35; }
  .profile-facts dd {
    margin-top: 1px;
    font-size: 11.5px;
    line-height: 1.45;
    overflow-wrap: normal;
    word-break: normal;
  }
  .profile-media {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }
  .profile-media a {
    min-height: 36px;
    padding: 5px 7px;
    font-size: 11.5px;
    line-height: 1.4;
  }
  .profile-media img { width: 26px; height: 26px !important; }
  .profile-contact-section {
    display: flex;
    flex-direction: column;
    gap: 7px;
  }
  .profile-actions {
    order: 1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }
  .profile-actions .profile-action {
    min-height: 84px;
    padding: 8px 4px;
    gap: 5px;
    font-size: 11px;
    line-height: 1.4;
    border-radius: 11px;
  }
  .profile-actions .profile-action img {
    max-width: 38px;
    height: 36px !important;
  }
  .profile-report {
    order: 2;
    justify-content: flex-end;
    margin: 0;
  }
  .profile-report a {
    width: auto;
    min-height: 30px;
    padding: 4px 7px;
    color: var(--ink-500);
    font-size: 10px;
    font-weight: 500;
    background: #fff;
    border-color: var(--line);
    border-style: dashed;
    border-radius: 7px;
  }
  .profile-report img {
    width: 15px;
    height: 15px !important;
    opacity: .72;
  }
  .page-profile .usual,
  .page-profile #usual2 { margin: 10px 0 !important; border-radius: 13px; }
  .page-profile #usual2 + br,
  .page-profile #usual2 + br + br { display: none; }
  .page-profile #usual2 > ul {
    display: flex;
    flex-wrap: nowrap;
    gap: 6px;
    padding: 7px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
  }
  .page-profile #usual2 > ul::-webkit-scrollbar { display: none; }
  .page-profile #usual2 > ul li {
    flex: 0 0 auto;
    min-width: 0;
    scroll-snap-align: start;
  }
  .page-profile #usual2 > ul a {
    min-height: 36px;
    padding: 6px 10px;
    font-size: 11.5px !important;
    line-height: 1.4;
    text-align: center;
    white-space: nowrap;
    border-radius: 9px;
  }
  .page-profile #usual2 > div[id^="tabs"] { padding: 6px; }
  .page-profile #usual2 > div[id^="tabs"] > br:first-child { display: none; }
  .page-profile #usual22 > ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    padding: 7px;
  }
  .page-profile #usual22 > ul li { min-width: 0; }
  .page-profile #usual22 > ul a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 6px 7px;
    font-size: 11.5px !important;
    line-height: 1.4;
    text-align: center;
    border-radius: 9px;
  }
  .page-profile #usual22 > ul a.selected {
    color: #fff;
    background: var(--pink-600);
    border-color: var(--pink-600);
  }
  .page-profile #usual22 > div[id^="tabs"] {
    min-height: 0;
    padding: 11px 12px;
    font-size: 13px;
    line-height: 1.75;
  }
  .page-profile #usual22 > div[id^="tabs"] > br:first-child { display: none; }
  .page-profile #tabs1 table,
  .page-profile #tabs2 table,
  .page-profile #tabs3 table,
  .page-profile #tabs4 table {
    width: 100% !important;
    table-layout: fixed;
    border-collapse: collapse;
  }
  .page-profile #tabs1 table tr,
  .page-profile #tabs2 table tr,
  .page-profile #tabs3 table tr,
  .page-profile #tabs4 table tr {
    display: table-row;
  }
  .page-profile #tabs7 table tr,
  .page-profile #tabs8 table tr { display: grid; grid-template-columns: minmax(0, 1fr); }
  .page-profile #tabs1 table td,
  .page-profile #tabs2 table td,
  .page-profile #tabs3 table td,
  .page-profile #tabs4 table td {
    display: table-cell;
    min-width: 0 !important;
    height: auto !important;
    padding: 5px 7px;
    vertical-align: middle;
  }
  .page-profile #tabs7 table td,
  .page-profile #tabs8 table td { display: block; width: 100% !important; min-width: 0 !important; height: auto !important; padding: 8px 10px; }
  .page-profile #tabs1 table .r-td,
  .page-profile #tabs2 table .r-td,
  .page-profile #tabs3 table .r-td,
  .page-profile #tabs4 table .r-td { width: 38% !important; font-size: 11px; line-height: 1.4; }
  .page-profile #tabs1 table .l-td,
  .page-profile #tabs2 table .l-td,
  .page-profile #tabs3 table .l-td,
  .page-profile #tabs4 table .l-td { width: 62% !important; font-size: 12px; line-height: 1.45; }
  .page-profile #tabs1 #AutoNumber5 td.profile-residence-flag {
    display: none !important;
  }

  /* A quieter, modern mobile profile surface without changing component sizes. */
  body.page-profile {
    background: #f6f9fd;
  }
  .page-profile .profile-hero {
    background: linear-gradient(145deg, #fff 0%, #f5faff 100%);
    border-color: #cbdced;
    border-top: 3px solid var(--blue-600);
  }
  .page-profile .profile-hero__info h1 {
    color: var(--navy-900);
    font-weight: 800;
  }
  .page-profile .profile-hero__avatar > img,
  .page-profile .profile-hero__avatar > a > img {
    border-color: #fff;
    outline: 1px solid #bdd3e8;
    box-shadow: none;
  }
  .page-profile .profile-facts {
    border-color: #d6e2ee;
    background: #d6e2ee;
  }
  .page-profile .profile-facts > div {
    background: rgba(255, 255, 255, .92);
  }
  .page-profile .profile-facts dt {
    color: #6a7f96;
    font-weight: 600;
  }
  .page-profile .profile-media a {
    background: #f8fbff;
    border-color: #d7e4f0;
  }
  .page-profile #usual2,
  .page-profile #usual22 {
    border-color: #cdddeb;
    background: #fff !important;
  }
  .page-profile #usual2 > ul,
  .page-profile #usual22 > ul {
    background: linear-gradient(135deg, var(--navy-900), #0a4d88);
  }
  .page-profile #usual2 > ul a,
  .page-profile #usual22 > ul a {
    border-color: rgba(190, 218, 244, .9);
  }
  .page-profile #usual2 > ul a:not(.selected),
  .page-profile #usual22 > ul a:not(.selected) {
    background: #f7fbff;
  }
  .page-profile #tabs1 table .r-td,
  .page-profile #tabs2 table .r-td,
  .page-profile #tabs3 table .r-td,
  .page-profile #tabs4 table .r-td {
    color: #173b62;
    font-weight: 700;
    background: #eaf3fd !important;
    border-bottom: 1px solid #dbe7f2;
  }
  .page-profile #tabs1 table .l-td,
  .page-profile #tabs2 table .l-td,
  .page-profile #tabs3 table .l-td,
  .page-profile #tabs4 table .l-td {
    color: var(--ink-900);
    background: #fff !important;
    border-bottom: 1px solid #e2ebf4;
  }
  .page-profile #tabs1 table tr:last-child td,
  .page-profile #tabs2 table tr:last-child td,
  .page-profile #tabs3 table tr:last-child td,
  .page-profile #tabs4 table tr:last-child td {
    border-bottom: 0;
  }
  .page-profile #usual22 > div[id^="tabs"] {
    color: var(--ink-900);
    background: #fffdfd;
  }
  .page-profile .profile-actions .profile-action {
    border-color: #d5e1ed;
    box-shadow: none;
  }
  .page-profile .profile-actions .profile-action:active {
    background: #f3f8fe;
    border-color: #b8d2e9;
  }
}

@media (max-width: 480px) {
  .page-search .site-main form table table,
  .page-search .site-main form table table > tbody {
    display: block;
    width: 100% !important;
  }

  .page-search .site-main form table table > tbody > tr,
  .page-search .site-main form table table > tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100% !important;
  }

  .page-search .site-main form table table > tbody > tr > td,
  .page-search .site-main form table table > tr > td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    padding: 8px 10px;
  }

  .page-search .site-main form table table .r-td {
    border-radius: 6px 6px 0 0;
  }

  .page-search .site-main form table table .l-td {
    border-radius: 0 0 6px 6px;
  }

  .page-search .site-main form table table input[type="text"],
  .page-search .site-main form table table select {
    max-width: 100%;
  }
}

/* The user requested two member cards on phones, including narrow devices. */
@media (max-width: 599px) {
  .member-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .member-card { border-radius: 10px; }
  .member-card__head { min-height: 38px; gap: 4px; padding: 6px 5px; font-size: 12px; }
  .member-card__flag { width: 16px; height: 15px !important; }
  .member-card__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
    min-height: 178px;
    padding: 10px 7px;
    text-align: center;
  }
  .member-card__avatar { width: 62px; height: 62px !important; }
  .member-card__content { width: 100%; font-size: 11.5px; line-height: 1.55; }
  .member-card__date { margin-top: 5px; font-size: 10.5px; }
  .page-home .centervalue { padding: 8px; }
}

/* Home featured members only: compact cards keep the newest-members section near the first view. */
@media (max-width: 767px) {
  .page-home .member-grid--featured { gap: 7px; }
  .page-home .member-grid--featured .member-card {
    min-height: 0;
    border-radius: 9px;
    box-shadow: none;
  }
  .page-home .member-grid--featured .member-card__head {
    min-height: 30px;
    gap: 4px;
    padding: 4px 5px;
    font-size: 11px;
    line-height: 1.35;
  }
  .page-home .member-grid--featured .member-card__flag {
    width: 15px;
    height: 14px !important;
  }
  .page-home .member-grid--featured .member-card__body {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    align-items: center;
    gap: 6px;
    min-height: 62px;
    padding: 7px;
    text-align: right;
  }
  .page-home .member-grid--featured .member-card__avatar-link {
    width: 44px;
    justify-self: center;
  }
  .page-home .member-grid--featured .member-card__avatar {
    width: 44px;
    height: 44px !important;
    border-width: 2px;
  }
  .page-home .member-grid--featured .member-card__content {
    display: -webkit-box;
    width: 100%;
    max-height: 3em;
    overflow: hidden;
    font-size: 10.5px;
    line-height: 1.5;
    text-align: right;
    overflow-wrap: normal;
    word-break: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .page-home .member-grid--featured .member-card__content:only-child {
    grid-column: 1 / -1;
    text-align: center;
  }
  .page-home .member-grid--newest .member-card--mobile-trimmed {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .registration-form-hero {
    align-items: flex-start;
    gap: 8px;
    margin: 0 0 10px;
    padding: 13px 14px;
    border-radius: 14px;
    box-shadow: none;
  }

  .registration-form-hero__copy { gap: 2px; }
  .registration-form-hero__eyebrow { padding: 2px 8px; font-size: 9.5px; }
  .registration-form-hero h2 { margin-top: 2px; font-size: 18px; }
  .registration-form-hero p { font-size: 10.5px; line-height: 1.55; }

  .registration-form-hero__privacy {
    min-height: 30px;
    padding: 5px 8px;
    font-size: 9px;
    white-space: normal;
    text-align: center;
  }

  .registration-profile-form {
    gap: 9px;
    max-width: 100%;
  }

  .registration-profile-form > table.tab {
    border-radius: 12px;
    box-shadow: none;
  }

  .registration-profile-form > table.tab > tbody {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .registration-profile-form > table.tab > tbody > tr,
  .page-register .site-main .registration-profile-form > table.tab > tbody > tr {
    display: grid !important;
    grid-template-columns: minmax(112px, 38%) minmax(0, 1fr) !important;
    grid-column: 1 / -1;
    width: 100% !important;
    min-width: 0 !important;
  }

  .registration-profile-form > table.tab > tbody > tr.registration-section-row,
  .registration-profile-form > table.registration-long-answer > tbody > tr {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .registration-profile-form > table.tab > tbody > tr > td,
  .page-register .site-main .registration-profile-form > table.tab > tbody > tr > td {
    display: flex !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    box-sizing: border-box;
  }

  .registration-profile-form > table.tab .h-td {
    min-height: 43px;
    padding: 9px 12px;
    color: #fff !important;
    font-size: 14px;
    line-height: 1.45;
    border-radius: 0;
  }

  .registration-profile-form > table.tab .h-td a,
  .registration-profile-form > table.tab .h-td span,
  .registration-profile-form > table.tab .h-td p { color: #fff !important; }

  .registration-profile-form > table.tab .r-td {
    justify-content: flex-start;
    min-height: 50px;
    padding: 7px 9px;
    font-size: 11.5px;
    line-height: 1.5;
    border: 0;
    border-inline-end: 1px solid #e5edf7;
    border-radius: 0;
  }

  .registration-profile-form > table.tab .l-td {
    min-height: 50px;
    padding: 5px 7px;
    font-size: 12px;
    border: 0;
  }

  .registration-profile-form input:not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
  .registration-profile-form select,
  .registration-profile-form textarea {
    max-width: 100% !important;
    font-size: 16px !important;
    touch-action: manipulation;
  }

  .registration-profile-form input:not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
  .registration-profile-form select {
    min-height: 40px;
    padding: 6px 8px;
  }

  .registration-profile-form textarea {
    min-height: 125px;
    padding: 9px 10px;
    line-height: 1.65;
    scroll-margin-top: 80px;
    scroll-margin-bottom: 46vh;
  }

  .registration-inline-validation {
    height: 22px;
    padding-top: 1px;
    font-size: 9.5px;
    line-height: 1.4;
  }

  .registration-profile-form #age,
  .registration-profile-form #length,
  .registration-profile-form #weight,
  .registration-profile-form select[name="number_of_children"] {
    width: calc(100% - 32px) !important;
  }

  .registration-profile-form > div[align="center"] { margin: -2px 0 0; }

  .registration-profile-form table.groundnotice {
    border-radius: 9px;
  }

  .registration-profile-form table.groundnotice .notice {
    display: block !important;
    padding: 8px 10px;
    font-size: 10.5px;
    line-height: 1.55;
  }

  .registration-profile-form table.groundnotice ul {
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
    padding-right: 17px;
  }

  .registration-profile-form > table.registration-long-answer .l-td {
    display: block !important;
    padding: 9px;
  }

  body.page-register .site-main .registration-profile-form > table.registration-long-answer textarea {
    height: 155px;
    min-height: 155px;
    max-height: 155px;
  }

  .registration-profile-form > table.registration-long-answer table.groundnotice {
    margin-bottom: 8px !important;
  }

  .registration-field-feedback {
    align-items: flex-start;
    gap: 3px 8px;
    min-height: 20px;
    margin-top: 3px !important;
  }

  .registration-field-feedback small {
    font-size: 10.5px;
  }

  .registration-validation-slot {
    flex-basis: 100%;
    min-height: 24px;
    font-size: 11px;
  }

  .registration-profile-form > p {
    margin: 2px 0 7px;
  }

  .registration-profile-form > p .sub-button {
    width: min(100%, 260px) !important;
    min-height: 48px;
    font-size: 15px;
    border-radius: 10px;
    box-shadow: none;
  }
}

@media (max-width: 359px) {
  .registration-card-heading { padding: 13px; }
  .registration-card-heading h2 { font-size: 18px; }
  .registration-terms-content { padding-inline: 12px; font-size: 13px; }
  .registration-consent { padding-inline: 11px; }
  .registration-consent__copy strong { font-size: 12.5px; }
  .registration-type-option { min-height: 110px; padding-inline: 5px; }
  .registration-type-option__avatar { width: 52px; height: 52px; }
  .registration-type-option__avatar img { width: 47px; height: 47px !important; }

  .primary-nav .nav-bar {
    grid-template-columns: 72px minmax(0, 1fr) 42px;
    gap: 4px;
    padding-inline: 5px;
  }
  .primary-nav .nav-bar.is-authenticated {
    grid-template-columns: 66px 46px minmax(0, 1fr) 40px;
  }
  .primary-nav .mobile-header-action {
    padding-inline: 5px !important;
    font-size: 10px;
  }
  .primary-nav .mobile-account-trigger {
    font-size: 9.5px;
  }
  .site-layout { padding-inline: 7px; }
  .member-grid { gap: 6px; }
  .member-card__head { font-size: 11px; }
  .member-card__body { padding-inline: 5px; }
  .member-card__avatar { width: 56px; height: 56px !important; }
  .member-card__content { font-size: 10.5px; }

  .registration-form-hero__privacy { display: none; }
  .registration-profile-form > table.tab > tbody > tr,
  .page-register .site-main .registration-profile-form > table.tab > tbody > tr {
    grid-template-columns: minmax(100px, 37%) minmax(0, 1fr) !important;
  }
  .registration-profile-form > table.tab .r-td { padding-inline: 7px; font-size: 11px; }
  .registration-profile-form > table.tab .l-td { padding-inline: 5px; }
}

/* Registration-only safeguards for narrow phones and portrait tablets. */
@media (max-width: 767px) {
  body.page-register .site-main .registration-profile-form > table.tab > tbody > tr > td:only-child,
  body.page-register .site-main .registration-profile-form > table.tab > tbody > tr > .h-td {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body.page-register .site-main .registration-profile-form > table.tab > tbody > tr > td:only-child textarea {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .page-account-messages .message-table,
  .page-account-messages .message-table tbody,
  .page-account-messages .message-table tr,
  .page-account-messages .message-table td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
  }

  .page-account-messages .message-table {
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  .page-account-messages .message-table caption {
    display: block;
    width: 100%;
    margin-bottom: 10px;
    padding: 0;
    border-radius: 12px;
  }

  .page-account-messages .message-table__caption-inner {
    min-height: 54px;
    padding: 11px 15px;
  }

  .page-account-messages .message-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
  }

  .page-account-messages .message-table tbody {
    display: grid;
    gap: 11px;
  }

  .page-account-messages .message-table tr {
    display: grid;
    grid-template-columns: 64px repeat(2, minmax(0, 1fr));
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--message-border);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
  }

  .page-account-messages .message-table tr.message-unread {
    background: #edf6ff;
    border-color: #b4d7f5;
  }

  .page-account-messages .message-table td {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
    padding: 9px 11px;
    text-align: right;
    border-bottom: 0;
    border-inline-start: 1px solid #e6edf5;
  }

  .page-account-messages .message-table td::before {
    content: attr(data-label);
    color: var(--ink-500);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;
  }

  .page-account-messages .message-table td:nth-child(1) {
    grid-column: 1;
    grid-row: 2;
    width: auto;
    align-items: center;
    border-inline-start: 0;
  }

  .page-account-messages .message-table td:nth-child(2) {
    grid-column: 1 / -1;
    grid-row: 1;
    width: auto;
    min-width: 0;
    border-bottom: 1px solid #e6edf5;
    border-inline-start: 0;
  }

  .page-account-messages .message-table .message-subject-content {
    flex-wrap: wrap;
  }

  .page-account-messages .message-table td:nth-child(3) {
    grid-column: 2;
    grid-row: 2;
    width: auto;
  }

  .page-account-messages .message-table td:nth-child(4) {
    grid-column: 3;
    grid-row: 2;
    width: auto;
    white-space: normal;
  }

  .page-account-messages .message-view-layout > tbody > tr {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .page-account-messages .message-details__body {
    min-height: 150px;
  }

  .page-account-messages .new-message-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .page-account-messages .new-message-editor { order: 2; }
  .page-account-messages .new-message-editor .form-row--recipient { display: none; }

  .page-account-messages .message-recipient {
    order: 1;
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 3px 11px;
    padding: 12px;
    text-align: right;
    border-inline-start: 4px solid var(--blue-600);
  }

  .page-account-messages .message-recipient h3 {
    grid-column: 2;
    align-self: end;
    padding: 0;
    color: var(--ink-500);
    font-size: 11px;
    background: transparent;
  }

  .page-account-messages .message-recipient > a:first-of-type,
  .page-account-messages .message-recipient > .member-card__flag {
    grid-column: 2;
    justify-self: start;
  }

  .page-account-messages .message-recipient > a[aria-label] {
    grid-column: 1;
    grid-row: 1 / span 3;
    align-self: center;
  }

  .page-account-messages .message-recipient__avatar {
    width: 72px;
    height: 72px !important;
  }

  body.page-register .site-layout.has-right-sidebar,
  body.page-register .site-layout.has-two-sidebars {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "main";
  }

  body.page-register .site-sidebar-right,
  body.page-register .site-sidebar-left {
    display: none !important;
  }

  body.page-register .site-main,
  body.page-register .registration-profile-form {
    width: 100%;
    min-width: 0;
  }
}

/* Registration CAPTCHA: compact vertical flow without changing its original handlers. */
.captcha-label-short { display: none; }

.registration-profile-form > table.tab.registration-captcha {
  display: block;
  width: 100% !important;
}

.registration-profile-form > table.tab.registration-captcha > tbody {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  width: 100%;
}

.registration-profile-form > table.tab.registration-captcha > tbody > tr {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  min-width: 0 !important;
}

.registration-profile-form > table.tab.registration-captcha > tbody > .captcha-title-row,
.registration-profile-form > table.tab.registration-captcha > tbody > .captcha-image-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
}

.registration-profile-form .registration-captcha .captcha-label-long { display: none; }
.registration-profile-form .registration-captcha .captcha-label-short { display: inline; }

.registration-profile-form .registration-captcha .captcha-image-cell {
  display: block !important;
  min-height: 0;
  padding: 10px 14px !important;
  background: #fff;
}

.registration-profile-form .registration-captcha .captcha-image-cell > p {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  width: 100%;
  margin: 0 !important;
}

.registration-profile-form .registration-captcha #siimage {
  display: block;
  flex: 0 1 auto;
  width: auto;
  max-width: 220px;
  height: auto !important;
  margin: 0 !important;
  border: 1px solid #b8c9dc !important;
  border-radius: 8px;
}

.registration-profile-form .registration-captcha object,
.registration-profile-form .registration-captcha .captcha-image-cell > p > a {
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
}

.registration-profile-form > table.tab.registration-captcha > tbody > .captcha-entry-row {
  display: grid !important;
  grid-template-columns: auto minmax(220px, min(340px, 62vw)) !important;
  align-items: start;
  justify-content: center;
  gap: 8px;
  padding: 9px 12px;
  background: #f5f8fc;
  border-top: 1px solid #e5edf7;
}

.registration-profile-form .registration-captcha .captcha-entry-row > .r-td {
  width: auto !important;
  min-width: 0 !important;
  min-height: 42px;
  padding: 0 !important;
  background: transparent;
  border: 0;
}

.registration-profile-form .registration-captcha .captcha-label-cell {
  align-items: center;
  justify-content: flex-end;
  color: var(--navy-900);
  font-size: 13px;
  font-weight: 850;
  line-height: 42px;
  white-space: nowrap;
}

.registration-profile-form .registration-captcha .captcha-entry-row > .r-td:last-child {
  display: flex !important;
  flex-direction: column;
  align-items: flex-end;
}

.registration-profile-form .registration-captcha input#captcha {
  flex: 0 0 42px;
  width: 140px !important;
  max-width: 140px !important;
  min-height: 42px;
  padding: 6px 9px;
  font-size: 16px !important;
  font-weight: 800;
  letter-spacing: .08em;
  text-align: center;
}

.registration-profile-form .registration-captcha #capview {
  display: block;
  width: 100%;
  max-width: 300px;
  min-height: 0;
  margin: 3px 0 0;
  color: #cf202f;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

.registration-profile-form .registration-captcha #capview:empty { display: none; }

.registration-profile-form .registration-captcha #capview:not(:empty) {
  padding: 0 4px;
}

.registration-profile-form .registration-captcha #capview img {
  width: 18px;
  height: 18px !important;
  margin-inline-end: 4px;
  object-fit: contain;
  vertical-align: middle;
}

.registration-profile-form .registration-captcha #capview font {
  color: inherit !important;
  font: inherit;
}

.registration-profile-form > table.registration-captcha + p > br { display: none; }

@media (max-width: 359px) {
  .registration-profile-form .registration-captcha .captcha-image-cell {
    padding-inline: 8px !important;
  }

  .registration-profile-form .registration-captcha #siimage { max-width: 180px; }

  .registration-profile-form > table.tab.registration-captcha > tbody > .captcha-entry-row {
    grid-template-columns: auto minmax(160px, 210px) !important;
    gap: 6px;
    padding-inline: 8px;
  }

  .registration-profile-form .registration-captcha .captcha-label-cell { font-size: 12px; }

  .registration-profile-form .registration-captcha input#captcha {
    width: 126px !important;
    max-width: 126px !important;
  }
}

@media (max-width: 767px) {
  .registration-profile-form .registration-captcha .captcha-image-cell object {
    display: none !important;
  }

  .registration-profile-form .registration-captcha #capview {
    font-size: 11px;
    line-height: 1.55;
  }
}

/* Registration-only CAPTCHA card. The shared legacy CAPTCHA remains untouched. */
.registration-captcha-card {
  width: 100%;
  margin: 0 0 8px;
  overflow: hidden;
  color: var(--ink-900);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 15px;
  box-shadow: 0 5px 16px rgba(7, 43, 83, .045);
}

.registration-captcha-card,
.registration-captcha-card * {
  box-sizing: border-box;
}

.registration-captcha-card__title {
  min-height: 51px;
  margin: 0;
  padding: 12px 17px;
  color: #fff;
  font-size: 17px;
  font-weight: 850;
  line-height: 1.45;
  background: linear-gradient(110deg, var(--navy-900), var(--navy-800));
  border-inline-end: 4px solid var(--pink-600);
}

.registration-captcha-card__visuals {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  padding: 10px 14px;
  direction: ltr;
}

.registration-captcha-card__tools {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 6px;
}

.registration-captcha-card__refresh {
  display: block;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
}

.registration-captcha-card__refresh img {
  display: block;
  width: 32px;
  height: 32px !important;
}

.registration-captcha-card__image {
  display: block;
  width: auto;
  max-width: 220px !important;
  height: auto !important;
  margin: 0;
  border: 1px solid #b8c9dc;
  border-radius: 8px;
}

.registration-captcha-card__entry {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
  padding: 9px 12px;
  background: #f5f8fc;
  border-top: 1px solid #e5edf7;
}

.registration-captcha-card__entry-main {
  display: inline-grid;
  grid-template-columns: auto 170px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  max-width: 100%;
}

.registration-captcha-card__entry-main > label {
  min-height: 42px;
  color: var(--navy-900);
  font-size: 13px;
  font-weight: 850;
  line-height: 42px;
  white-space: nowrap;
}

.registration-captcha-card__control {
  width: 170px;
  max-width: 100%;
  min-width: 0;
}

body.page-register .site-main .registration-profile-form .registration-captcha-card input#captcha {
  display: block;
  width: 100% !important;
  max-width: none !important;
  min-height: 42px;
  margin: 0;
  padding: 6px 9px;
  font-size: 16px !important;
  font-weight: 800;
  letter-spacing: .08em;
  text-align: center;
}

.registration-captcha-card #capview {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2px 4px;
  width: 100%;
  max-width: 520px;
  min-height: 0;
  margin: 2px auto 0;
  color: #cf202f;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  direction: rtl;
}

.registration-captcha-card #capview:empty { display: none; }

.registration-captcha-card #capview > br { display: none; }

.registration-captcha-card #capview img {
  width: 18px;
  height: 18px !important;
  margin: 0;
  object-fit: contain;
  vertical-align: middle;
}

.registration-captcha-card #capview font {
  color: inherit !important;
  font: inherit;
}

.registration-profile-form > .registration-captcha-card + p > br { display: none; }

@media (max-width: 767px) {
  .registration-captcha-card__entry {
    padding: 8px;
  }

  .registration-captcha-card__entry-main {
    grid-template-columns: auto 150px;
  }

  .registration-captcha-card__control {
    width: 150px;
  }

  .registration-captcha-card #capview {
    font-size: 11px;
    line-height: 1.55;
  }
}

@media (max-width: 359px) {
  .registration-captcha-card__visuals { padding-inline: 8px; }
  .registration-captcha-card__image { max-width: 180px !important; }
  .registration-captcha-card__entry-main { grid-template-columns: auto 135px; gap: 6px; }
  .registration-captcha-card__entry-main > label { font-size: 12px; }
  .registration-captcha-card__control { width: 135px; }

  body.page-register .site-main .registration-profile-form .registration-captcha-card input#captcha {
    width: 100% !important;
  }
}

/* Refined classic member profile for tablets and desktop.
   The established layout, dimensions and mobile presentation stay unchanged. */
@media (min-width: 768px) {
  .page-profile .site-main {
    --profile-line: #d6e2ef;
    --profile-soft: #f6f9fd;
    --profile-label: #e8f2fd;
  }

  .page-profile .profile-hero {
    position: relative;
    gap: 22px;
    padding: 22px;
    overflow: hidden;
    background:
      radial-gradient(circle at 92% 8%, rgba(21, 145, 244, .08), transparent 34%),
      linear-gradient(180deg, #fff 0%, #fbfdff 100%);
    border-color: var(--profile-line);
    border-radius: 18px;
    box-shadow: 0 14px 38px rgba(6, 29, 59, .08);
  }

  .page-profile .profile-hero::before {
    position: absolute;
    inset: 0 0 auto;
    height: 4px;
    content: "";
    background: linear-gradient(90deg, var(--pink-600), var(--blue-600), var(--navy-900));
  }

  .page-profile .profile-hero__info h1 {
    margin-bottom: 14px;
    padding: 2px 2px 12px;
    color: var(--navy-900);
    font-weight: 800;
    border-bottom: 1px solid #e5edf6;
  }

  .page-profile .profile-hero__avatar > img,
  .page-profile .profile-hero__avatar > a > img {
    border-color: #fff;
    box-shadow:
      0 0 0 1px #cbdbea,
      0 12px 28px rgba(6, 29, 59, .14);
  }

  .page-profile .profile-facts {
    border-color: var(--profile-line);
    border-radius: 12px;
    background: var(--profile-line);
    box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
  }

  .page-profile .profile-facts > div {
    padding: 10px 12px;
    background: rgba(255, 255, 255, .96);
  }

  .page-profile .profile-facts dt {
    color: var(--ink-500);
    font-size: 12px;
    font-weight: 650;
  }

  .page-profile .profile-facts dd {
    margin-top: 3px;
    color: var(--navy-950);
    font-weight: 750;
  }

  .page-profile .profile-media {
    gap: 10px;
  }

  .page-profile .profile-hero--no-media {
    grid-template-areas: "info avatar" !important;
  }

  .page-profile .profile-hero--no-media .profile-media {
    display: none !important;
  }

  .page-profile .profile-media a {
    min-height: 48px;
    padding: 9px 12px;
    color: var(--navy-900);
    font-weight: 700;
    background: rgba(246, 249, 253, .95);
    border-color: var(--profile-line);
    border-radius: 11px;
  }

  .page-profile .usual,
  .page-profile #usual2 {
    margin-block: 18px !important;
    border-color: var(--profile-line);
    border-radius: 17px;
    box-shadow: 0 10px 30px rgba(6, 29, 59, .065);
  }

  .page-profile .usual ul,
  .page-profile #usual2 > ul {
    gap: 9px;
    padding: 16px;
    background: linear-gradient(115deg, var(--navy-950), var(--navy-800));
  }

  .page-profile .usual ul a,
  .page-profile #usual2 > ul a {
    min-height: 43px;
    padding: 9px 15px;
    color: var(--navy-900);
    font-size: 14px !important;
    font-weight: 750;
    background: #edf6ff;
    border-color: #c7def4;
    box-shadow: 0 1px 0 rgba(255, 255, 255, .75) inset;
  }

  .page-profile #usual2 > ul a.selected,
  .page-profile #usual2 > ul a:hover,
  .page-profile #usual2 > ul a:focus-visible,
  .page-profile #usual22 > ul a.selected,
  .page-profile #usual22 > ul a:hover,
  .page-profile #usual22 > ul a:focus-visible,
  .page-profile .usual ul a.selected,
  .page-profile .usual ul a:hover,
  .page-profile .usual ul a:focus-visible {
    color: #fff !important;
    background: linear-gradient(135deg, var(--pink-600), var(--pink-500)) !important;
    border-color: var(--pink-600) !important;
  }

  .page-profile #usual22 > ul a:not(.selected) {
    color: var(--navy-900);
    background: #edf6ff;
    border-color: #c7def4;
  }

  .page-profile #usual2 > div[id^="tabs"],
  .page-profile #usual22 > div[id^="tabs"] {
    padding: 18px;
    background: #fff;
  }

  .page-profile #usual2 > div[id^="tabs"] > br:first-child,
  .page-profile #usual22 > div[id^="tabs"] > br:first-child {
    display: none;
  }

  .page-profile #usual2 > div[id^="tabs"] table {
    overflow: hidden;
    border: 1px solid var(--profile-line);
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 12px;
    background: #fff;
  }

  .page-profile #usual2 > div[id^="tabs"] table .r-td,
  .page-profile #usual2 > div[id^="tabs"] table .l-td {
    min-height: 44px;
    padding: 11px 14px;
    line-height: 1.65;
    border-color: #edf2f7;
  }

  .page-profile #usual2 > div[id^="tabs"] table .r-td {
    color: var(--navy-900);
    font-weight: 750;
    background: var(--profile-label);
  }

  .page-profile #usual2 > div[id^="tabs"] table .l-td {
    color: var(--ink-900);
    background: #fff;
  }

  .page-profile #usual22 > div[id^="tabs"] {
    min-height: 0;
    padding: 16px 20px 18px;
    color: var(--ink-900);
    font-size: 16px;
    line-height: 1.75;
    text-align: start;
    overflow-wrap: anywhere;
    background: linear-gradient(180deg, #fff, #fffafb);
  }

  .page-profile .profile-report {
    margin: 16px 0;
  }

  .page-profile .profile-report a {
    min-height: 42px;
    padding: 7px 12px;
    color: #a62236;
    background: #fff8f9;
    border-color: #f0c9d0;
    border-radius: 10px;
  }

  .page-profile .profile-actions {
    gap: 14px;
  }

  .page-profile .profile-actions a {
    min-height: 132px;
    padding: 14px 10px;
    color: var(--navy-900);
    background: linear-gradient(180deg, #fff, #fbfdff);
    border-color: var(--profile-line);
    border-radius: 16px;
    box-shadow: 0 8px 24px rgba(6, 29, 59, .07);
  }

}

@media (min-width: 1051px) {
  .page-profile .profile-hero--no-media {
    grid-template-columns: minmax(0, 1fr) 190px !important;
  }
}

/* Modern browsers can resolve an empty media area before the small
   template fallback runs. This prevents a reserved third column when
   the member has no visible video, audio or gallery links. */
@supports selector(.profile-hero:has(.profile-media a)) {
  @media (min-width: 768px) {
    .page-profile .profile-hero:not(:has(.profile-media a)) {
      grid-template-areas: "info avatar" !important;
    }

    .page-profile .profile-hero:not(:has(.profile-media a)) .profile-media {
      display: none !important;
    }
  }

  @media (min-width: 1051px) {
    .page-profile .profile-hero:not(:has(.profile-media a)) {
      grid-template-columns: minmax(0, 1fr) 190px !important;
    }
  }
}

@media (min-width: 1200px) {
  .page-profile .profile-hero {
    padding: 24px;
  }

  .page-profile #usual2 > div[id^="tabs"],
  .page-profile #usual22 > div[id^="tabs"] {
    padding-inline: 22px;
  }
}

@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .page-profile .profile-media a,
  .page-profile .profile-actions a,
  .page-profile .profile-report a {
    transition: color .18s ease, border-color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease;
  }

  .page-profile .profile-media a:hover,
  .page-profile .profile-actions a:hover {
    color: var(--navy-900);
    border-color: #9fc7ea;
    box-shadow: 0 12px 28px rgba(6, 29, 59, .1);
    transform: translateY(-2px);
  }

  .page-profile .profile-report a:hover {
    color: #921b2e;
    background: #fff2f4;
    border-color: #e9aeb9;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .primary-nav { transition: none !important; }
}

/* r69: lightweight assets and clear keyboard focus.
   These rules are intentionally scoped to the public theme only. */
.registration-type-option__avatar picture {
  display: contents;
}

.page-profile .profile-action__icon {
  flex: 0 0 auto;
  object-fit: contain;
}

/* r84: r80 inbox refined only for phones and small devices.
   Desktop and tablet rules above remain unchanged. */
@media (max-width: 767px) {
  .page-account-messages .account-welcome {
    margin-bottom: 8px;
  }

  .page-account-messages .mailbox-shortcuts {
    margin: 0 auto 13px;
  }

  .page-account-messages .messages-form--inbox {
    width: 100%;
    min-width: 0;
  }

  .page-account-messages .message-table--inbox caption {
    margin-bottom: 8px;
    border-radius: 12px;
  }

  .page-account-messages .message-table--inbox .message-table__caption-inner {
    min-height: 46px;
    padding: 8px 10px;
  }

  .page-account-messages .message-table--inbox tbody {
    gap: 10px;
  }

  .page-account-messages .message-table--inbox tr {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: hidden;
    background: #fff;
    border: 1px solid #d6e3ef;
    border-radius: 14px;
    box-shadow: 0 3px 12px rgba(6, 29, 59, .05);
  }

  .page-account-messages .message-table--inbox tr.message-unread {
    background: #eff7ff;
    border-color: #acd2f2;
    box-shadow: 0 3px 12px rgba(11, 120, 213, .07);
  }

  .page-account-messages .message-table--inbox td {
    width: 100% !important;
    min-width: 0;
    min-height: 0;
    border: 0;
  }

  .page-account-messages .message-table--inbox td:nth-child(2) {
    display: grid;
    grid-column: 1 / -1;
    grid-row: 1;
    grid-template-columns: minmax(0, 1fr);
    align-items: center;
    gap: 0;
    min-width: 0;
    min-height: 46px;
    padding: 8px 11px;
    background: rgba(255, 255, 255, .56);
    border-bottom: 1px solid #d9e6f1;
    cursor: pointer;
  }

  /* r95: carry the unread tint through the subject row on small screens. */
  .page-account-messages .message-table--inbox tr.message-unread td:nth-child(2) {
    background: #f2f8ff;
    border-bottom-color: #cfe3f5;
  }

  .page-account-messages .message-table--inbox td:nth-child(2)::before {
    display: none;
  }

  .page-account-messages .message-table--inbox td:nth-child(3),
  .page-account-messages .message-table--inbox td:nth-child(4) {
    display: flex;
    grid-row: 2;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 2px;
    min-height: 54px;
    padding: 8px 11px;
    text-align: right !important;
    border-bottom: 1px solid #d9e6f1;
    cursor: pointer;
  }

  .page-account-messages .message-table--inbox td:nth-child(3) {
    grid-column: 1;
    border-inline-end: 1px solid #d9e6f1;
  }

  .page-account-messages .message-table--inbox td:nth-child(4) {
    grid-column: 2;
  }

  .page-account-messages .message-table--inbox td:nth-child(1) {
    display: flex;
    grid-column: 1 / -1;
    grid-row: 3;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    min-height: 34px;
    padding: 4px 11px;
    background: #f8fafc;
  }

  .page-account-messages .message-table--inbox td:nth-child(1)::before,
  .page-account-messages .message-table--inbox td:nth-child(3)::before,
  .page-account-messages .message-table--inbox td:nth-child(4)::before {
    color: #708398;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.35;
  }

  .page-account-messages .message-table--inbox .message-subject-content {
    align-items: center;
    flex-wrap: nowrap;
    gap: 7px;
    width: 100%;
    min-width: 0;
  }

  .page-account-messages .message-table--inbox .message-subject-content a {
    display: -webkit-box;
    order: 1;
    flex: 1 1 auto;
    max-width: 100%;
    overflow: hidden;
    font-size: 13.5px;
    line-height: 1.5;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }

  .page-account-messages .message-table--inbox .message-status-badge {
    order: 2;
    min-height: 20px;
    padding: 2px 6px;
    font-size: 9px;
    box-shadow: none;
  }

  .page-account-messages .message-table--inbox td:nth-child(3),
  .page-account-messages .message-table--inbox td:nth-child(4) {
    font-size: 12.5px;
    line-height: 1.45;
  }

  /* r94: clearer sender/date hierarchy on read messages without weakening unread emphasis. */
  .page-account-messages .message-table--inbox tr.message-read td:nth-child(3) {
    color: #536b83;
    font-weight: 600;
  }

  .page-account-messages .message-table--inbox tr.message-read td:nth-child(4) {
    color: #667b90;
    font-weight: 500;
  }

  .page-account-messages .message-table--inbox td:nth-child(1) input[type="checkbox"] {
    width: 20px;
    height: 20px;
  }

  .page-account-messages .messages-form--inbox .message-bulk-actions {
    gap: 8px;
    margin-top: 10px;
  }

  .page-account-messages .messages-form--inbox .message-bulk-actions .sub-button {
    min-height: 40px;
    border-radius: 10px;
  }

  /*
   * iOS and some Android browsers keep :hover active after a tap. Keep the
   * bulk-selection state explicit so the button label can never disappear
   * against its background.
   */
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected),
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):hover,
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):focus,
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):active {
    color: var(--navy-800);
    background: #fff;
    border-color: #b7cae0;
  }

  .page-account-messages .messages-form--inbox .message-select-all.is-all-selected,
  .page-account-messages .messages-form--inbox .message-select-all.is-all-selected:hover,
  .page-account-messages .messages-form--inbox .message-select-all.is-all-selected:focus,
  .page-account-messages .messages-form--inbox .message-select-all.is-all-selected:active {
    color: #fff;
    background: var(--navy-800);
    border-color: var(--navy-800);
  }
}

@media (max-width: 359px) {
  .page-account-messages .message-table--inbox tr {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-account-messages .message-table--inbox td:nth-child(3),
  .page-account-messages .message-table--inbox td:nth-child(4) {
    grid-column: 1;
    min-height: 46px;
  }

  .page-account-messages .message-table--inbox td:nth-child(3) {
    grid-row: 2;
    border-inline-end: 0;
  }

  .page-account-messages .message-table--inbox td:nth-child(4) {
    grid-row: 3;
  }

  .page-account-messages .message-table--inbox td:nth-child(1) {
    grid-row: 4;
  }
}

/* r92: dedicated sent-mail cards for phones and small devices. */
@media (max-width: 767px) {
  .page-account-messages .messages-form--outbox {
    width: 100%;
    min-width: 0;
  }

  .page-account-messages .message-table--outbox caption {
    margin-bottom: 8px;
    border-radius: 12px;
  }

  .page-account-messages .message-table--outbox .message-table__caption-inner {
    min-height: 46px;
    padding: 8px 10px;
  }

  .page-account-messages .message-table--outbox tbody {
    gap: 10px;
  }

  .page-account-messages .message-table--outbox tr {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: hidden;
    background: #fff;
    border: 1px solid #d6e3ef;
    border-radius: 14px;
    box-shadow: 0 3px 12px rgba(6, 29, 59, .05);
  }

  .page-account-messages .message-table--outbox td {
    width: 100% !important;
    min-width: 0;
    min-height: 0;
    border: 0;
  }

  .page-account-messages .message-table--outbox td:nth-child(2) {
    display: grid;
    grid-column: 1 / -1;
    grid-row: 1;
    grid-template-columns: minmax(0, 1fr);
    align-items: center;
    min-height: 46px;
    padding: 8px 11px;
    background: #f8fbff;
    border-bottom: 1px solid #d9e6f1;
    cursor: pointer;
  }

  .page-account-messages .message-table--outbox td:nth-child(2)::before {
    display: none;
  }

  .page-account-messages .message-table--outbox td:nth-child(3),
  .page-account-messages .message-table--outbox td:nth-child(4) {
    display: flex;
    grid-row: 2;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 2px;
    min-height: 54px;
    padding: 8px 11px;
    text-align: right !important;
    border-bottom: 1px solid #d9e6f1;
    cursor: pointer;
  }

  .page-account-messages .message-table--outbox td:nth-child(3) {
    grid-column: 1;
    border-inline-end: 1px solid #d9e6f1;
  }

  .page-account-messages .message-table--outbox td:nth-child(4) {
    grid-column: 2;
  }

  .page-account-messages .message-table--outbox td:nth-child(1) {
    display: flex;
    grid-column: 1 / -1;
    grid-row: 3;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    min-height: 38px;
    padding: 6px 11px;
    background: #f8fafc;
  }

  .page-account-messages .message-table--outbox td:nth-child(1)::before,
  .page-account-messages .message-table--outbox td:nth-child(3)::before,
  .page-account-messages .message-table--outbox td:nth-child(4)::before {
    color: #708398;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.35;
  }

  .page-account-messages .message-table--outbox .message-subject-content {
    width: 100%;
    min-width: 0;
  }

  /* r93: match sent titles to opened inbox titles; unread inbox stays stronger. */
  .page-account-messages .message-table--outbox .message-subject-content a {
    display: -webkit-box;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    color: #315574;
    font-size: 13.5px;
    font-weight: 700;
    line-height: 1.5;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }

  .page-account-messages .message-table--outbox td:nth-child(3),
  .page-account-messages .message-table--outbox td:nth-child(4) {
    font-size: 12.5px;
    line-height: 1.45;
  }

  /* r94: keep recipient and date typography consistent with the inbox on small screens. */
  .page-account-messages .message-table--outbox td:nth-child(3) {
    color: #536b83;
    font-weight: 600;
  }

  .page-account-messages .message-table--outbox td:nth-child(4) {
    color: #667b90;
    font-weight: 500;
  }

  .page-account-messages .message-table--outbox td:nth-child(1) input[type="checkbox"] {
    width: 20px;
    height: 20px;
  }

  .page-account-messages .messages-form--outbox .message-bulk-actions {
    gap: 8px;
    margin-top: 10px;
  }

  .page-account-messages .messages-form--outbox .message-bulk-actions .sub-button {
    min-height: 40px;
    border-radius: 10px;
  }

  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected),
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):hover,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):focus,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):active {
    color: var(--navy-800);
    background: #fff;
    border-color: #b7cae0;
  }

  .page-account-messages .messages-form--outbox .message-select-all.is-all-selected,
  .page-account-messages .messages-form--outbox .message-select-all.is-all-selected:hover,
  .page-account-messages .messages-form--outbox .message-select-all.is-all-selected:focus,
  .page-account-messages .messages-form--outbox .message-select-all.is-all-selected:active {
    color: #fff;
    background: var(--navy-800);
    border-color: var(--navy-800);
  }
}

@media (max-width: 359px) {
  .page-account-messages .message-table--outbox tr {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-account-messages .message-table--outbox td:nth-child(3),
  .page-account-messages .message-table--outbox td:nth-child(4) {
    grid-column: 1;
    min-height: 46px;
  }

  .page-account-messages .message-table--outbox td:nth-child(3) {
    grid-row: 2;
    border-inline-end: 0;
  }

  .page-account-messages .message-table--outbox td:nth-child(4) {
    grid-row: 3;
  }

  .page-account-messages .message-table--outbox td:nth-child(1) {
    grid-row: 4;
  }
}

/*
 * Responsive delete confirmation for the inbox and outbox.
 * It overrides the legacy fixed 500px alert only while this specific dialog
 * is open, preserving every callback and every other alert in the script.
 */
body.message-delete-confirm-open {
  overflow: hidden;
}

body.message-delete-confirm-open #BoxOverlay {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  min-height: 100vh;
  background: rgba(3, 22, 45, .59) !important;
  opacity: 1 !important;
  touch-action: none;
}

#alert-Box.message-delete-confirm {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  width: min(460px, calc(100vw - 40px)) !important;
  max-width: calc(100vw - 40px) !important;
  max-height: calc(100vh - 40px);
  max-height: calc(100dvh - 40px);
  width: min(460px, calc(100vw - 40px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px))) !important;
  max-width: calc(100vw - 40px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)) !important;
  max-height: calc(100vh - 40px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
  max-height: calc(100dvh - 40px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
  padding: 0 !important;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  background: #fff !important;
  border: 1px solid #d6e3f0;
  border-radius: 20px;
  box-shadow: 0 24px 60px rgba(2, 24, 49, .3);
  box-sizing: border-box;
  transform: translate(-50%, -50%);
}

#alert-Box.message-delete-confirm #alert-InBox,
#alert-Box.message-delete-confirm #alert-BoxContent {
  width: 100% !important;
  padding: 0 !important;
  background: none !important;
  box-sizing: border-box;
}

#alert-Box.message-delete-confirm #alert-BoxContenedor {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 0;
  padding: 28px 28px 24px !important;
  color: var(--navy-900);
  background: #fff !important;
  box-sizing: border-box;
  direction: rtl;
  font-family: Tahoma, Arial, sans-serif;
  line-height: 1.65;
  text-align: center;
}

#alert-Box.message-delete-confirm #alert-BoxContenedor.BoxConfirm::before {
  display: block;
  align-self: center;
  width: 54px;
  height: 54px;
  margin: 0 auto 15px;
  background-color: #fff0f4;
  background-image: url("../images/icon-delete-confirm.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 28px 28px;
  border: 1px solid #f5cad6;
  border-radius: 50%;
  content: "";
  box-sizing: border-box;
}

#alert-Box.message-delete-confirm .message-delete-confirm-title,
#alert-Box.message-delete-confirm .message-delete-confirm-note {
  display: block;
}

#alert-Box.message-delete-confirm .message-delete-confirm-title {
  color: var(--navy-900);
  font-size: 19px;
  font-weight: 800;
  line-height: 1.5;
}

#alert-Box.message-delete-confirm .message-delete-confirm-note {
  margin-top: 5px;
  color: #6b7b8f;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.55;
}

#alert-Box.message-delete-confirm #alert-Buttons {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 12px;
  width: 100%;
  margin-top: 21px;
  text-align: center;
}

#alert-Box.message-delete-confirm #alert-Buttons input {
  flex: 1 1 0;
  width: auto !important;
  max-width: 170px;
  min-width: 0;
  min-height: 46px;
  margin: 0 !important;
  padding: 10px 16px;
  border: 1px solid transparent;
  border-radius: 12px;
  box-shadow: none;
  font-family: inherit;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
  cursor: pointer;
  transition: border-color .16s ease, background-color .16s ease;
  -webkit-appearance: none;
  appearance: none;
}

#alert-Box.message-delete-confirm #alert-Buttons input#BoxConfirmBtnOk {
  color: #fff;
  background: #c83d62;
  border-color: #c83d62;
}

#alert-Box.message-delete-confirm #alert-Buttons input#BoxConfirmBtnOk:hover,
#alert-Box.message-delete-confirm #alert-Buttons input#BoxConfirmBtnOk:active {
  color: #fff;
  background: #b93357;
  border-color: #b93357;
}

#alert-Box.message-delete-confirm #alert-Buttons input#BoxConfirmBtnCancel,
#alert-Box.message-delete-confirm #alert-Buttons input#BoxConfirmBtnCancel:hover,
#alert-Box.message-delete-confirm #alert-Buttons input#BoxConfirmBtnCancel:active {
  color: var(--navy-800);
  background: #f1f5f9;
  border-color: #cfdae6;
}

#alert-Box.message-delete-confirm #alert-Buttons input:focus-visible {
  outline: 3px solid rgba(200, 61, 98, .22);
  outline-offset: 2px;
}

/*
 * The member-block confirmation uses the same responsive dialog shell while
 * keeping its less destructive action visually distinct from message deletion.
 */
#alert-Box.message-delete-confirm.message-block-confirm #alert-BoxContenedor.BoxConfirm::before {
  background-color: #f2f6fa;
  background-image: url("../images/icons/action-block.svg");
  background-size: 38px 38px;
  border-color: #d6e2ed;
}

#alert-Box.message-delete-confirm.message-block-confirm #alert-Buttons input#BoxConfirmBtnOk {
  color: #fff;
  background: #0b5fa8;
  border-color: #0b5fa8;
}

#alert-Box.message-delete-confirm.message-block-confirm #alert-Buttons input#BoxConfirmBtnOk:hover,
#alert-Box.message-delete-confirm.message-block-confirm #alert-Buttons input#BoxConfirmBtnOk:active {
  color: #fff;
  background: #084f8d;
  border-color: #084f8d;
}

#alert-Box.message-delete-confirm.message-block-confirm #alert-Buttons input:focus-visible {
  outline-color: rgba(11, 95, 168, .22);
}

@media (max-width: 767px) {
  #alert-Box.message-delete-confirm {
    width: min(420px, calc(100vw - 28px)) !important;
    max-width: calc(100vw - 28px) !important;
    max-height: calc(100vh - 28px);
    max-height: calc(100dvh - 28px);
    width: min(420px, calc(100vw - 28px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px))) !important;
    max-width: calc(100vw - 28px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)) !important;
    max-height: calc(100vh - 28px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    max-height: calc(100dvh - 28px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    border-radius: 18px;
  }

  #alert-Box.message-delete-confirm #alert-BoxContenedor {
    padding: 22px 18px 18px !important;
  }

  #alert-Box.message-delete-confirm #alert-BoxContenedor.BoxConfirm::before {
    width: 48px;
    height: 48px;
    margin-bottom: 12px;
    background-size: 25px 25px;
  }

  #alert-Box.message-delete-confirm.message-block-confirm #alert-BoxContenedor.BoxConfirm::before {
    background-size: 34px 34px;
  }

  #alert-Box.message-delete-confirm .message-delete-confirm-title {
    font-size: 17px;
  }

  #alert-Box.message-delete-confirm .message-delete-confirm-note {
    font-size: 12.5px;
  }

  #alert-Box.message-delete-confirm #alert-Buttons {
    gap: 10px;
    margin-top: 17px;
  }

  #alert-Box.message-delete-confirm #alert-Buttons input {
    max-width: 150px;
    min-height: 44px;
    padding: 9px 14px;
    border-radius: 11px;
    font-size: 14px;
  }
}

@media (max-width: 339px) {
  #alert-Box.message-delete-confirm {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 24px);
    max-height: calc(100dvh - 24px);
    width: calc(100vw - 24px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)) !important;
    max-width: calc(100vw - 24px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)) !important;
    max-height: calc(100vh - 24px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    max-height: calc(100dvh - 24px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
  }

  #alert-Box.message-delete-confirm #alert-Buttons {
    flex-direction: column;
  }

  #alert-Box.message-delete-confirm #alert-Buttons input {
    flex: 0 0 auto;
    width: 100% !important;
    max-width: none;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  #alert-Box.message-delete-confirm {
    width: min(450px, calc(100vw - 48px)) !important;
    max-width: calc(100vw - 48px) !important;
    width: min(450px, calc(100vw - 48px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px))) !important;
    max-width: calc(100vw - 48px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)) !important;
  }
}

/* Message deletion success: enhance only the short redirect state emitted by the script. */
body.message-delete-success-page .site-container,
body.message-send-success-page .site-container,
body.message-send-cooldown-page .site-container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100dvh;
}

body.message-delete-success-page .site-layout,
body.message-send-success-page .site-layout,
body.message-send-cooldown-page .site-layout {
  flex: 1 0 auto;
  width: 100%;
}

body.message-delete-success-page .site-footer,
body.message-send-success-page .site-footer,
body.message-send-cooldown-page .site-footer {
  margin-top: auto;
}

.message-delete-success-host {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.message-delete-success {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  width: min(720px, calc(100% - 40px));
  margin: clamp(26px, 4vw, 52px) auto;
  padding: 26px 30px;
  color: var(--navy-900);
  direction: rtl;
  text-align: right;
  background: linear-gradient(135deg, #fff 0%, #f4fbf8 100%);
  border: 1px solid #c9e6da;
  border-radius: 20px;
  box-shadow: 0 14px 34px rgba(9, 43, 87, .09);
  box-sizing: border-box;
}

.message-delete-success__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  color: #147a58;
  background: #e7f7ef;
  border: 1px solid #b9dfcf;
  border-radius: 50%;
  box-sizing: border-box;
}

.message-delete-success__icon svg {
  display: block;
}

.message-delete-success__content {
  display: block;
  min-width: 0;
}

.message-delete-success__title,
.message-delete-success__note {
  display: block;
}

.message-delete-success__title {
  color: var(--navy-900);
  font-size: clamp(18px, 1.45vw, 21px);
  font-weight: 800;
  line-height: 1.5;
}

.message-delete-success__note {
  margin-top: 4px;
  color: #617287;
  font-size: clamp(13px, 1vw, 15px);
  font-weight: 500;
  line-height: 1.65;
}

@media (max-width: 767px) {
  .message-delete-success {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    width: calc(100% - 28px);
    margin: 24px auto 30px;
    padding: 18px;
    border-radius: 17px;
    box-shadow: 0 10px 26px rgba(9, 43, 87, .08);
  }

  .message-delete-success__icon {
    width: 46px;
    height: 46px;
  }

  .message-delete-success__icon svg {
    width: 24px;
    height: 24px;
  }

  .message-delete-success__title {
    font-size: 17px;
  }

  .message-delete-success__note {
    margin-top: 3px;
    font-size: 13px;
    line-height: 1.55;
  }
}

@media (max-width: 360px) {
  .message-delete-success {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 11px;
    width: calc(100% - 20px);
    padding: 15px 14px;
  }

  .message-delete-success__icon {
    width: 40px;
    height: 40px;
  }

  .message-delete-success__title {
    font-size: 16px;
  }

  .message-delete-success__note {
    font-size: 12.5px;
  }
}

/* Message sending success: replace the legacy oversized check image only on sendmsg. */
.message-send-success-host {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.message-send-success {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  width: min(680px, calc(100% - 40px));
  margin: clamp(26px, 4vw, 50px) auto;
  padding: 25px 30px;
  color: var(--navy-900);
  direction: rtl;
  text-align: right;
  background: linear-gradient(135deg, #fff 0%, #f3fbf7 100%);
  border: 1px solid #c4e3d5;
  border-radius: 20px;
  box-shadow: 0 14px 34px rgba(9, 43, 87, .09);
  box-sizing: border-box;
}

.message-send-success__icon {
  display: block;
  width: 56px;
  height: 56px;
  background: url("../images/icon-message-sent.svg") center / contain no-repeat;
}

/* Message resend cooldown: modernize only the server-rendered two-minute notice. */
.message-send-cooldown-host {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.message-send-cooldown {
  position: relative;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  width: min(680px, calc(100% - 40px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)));
  margin: clamp(28px, 5vw, 58px) auto;
  padding: 26px 30px;
  overflow: hidden;
  color: var(--navy-900);
  direction: rtl;
  text-align: right;
  background: linear-gradient(135deg, #fff 0%, #f4f9fe 100%);
  border: 1px solid #c9deef;
  border-radius: 21px;
  box-shadow: 0 14px 34px rgba(9, 43, 87, .09);
  box-sizing: border-box;
}

.message-send-cooldown::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: linear-gradient(90deg, #0b78dc 0%, #df5e84 100%);
  content: "";
}

.message-send-cooldown__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  color: #0b66b4;
  background: #edf6fd;
  border: 1px solid #c8dff1;
  border-radius: 50%;
  box-sizing: border-box;
}

.message-send-cooldown__icon svg {
  display: block;
  width: 31px;
  height: 31px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.message-send-cooldown__content,
.message-send-cooldown__title,
.message-send-cooldown__note {
  display: block;
  min-width: 0;
}

.message-send-cooldown__title {
  color: var(--navy-900);
  font-size: clamp(18px, 1.45vw, 21px);
  font-weight: 800;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.message-send-cooldown__note {
  margin-top: 4px;
  color: #617287;
  font-size: clamp(13px, 1vw, 15px);
  font-weight: 500;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

@media (max-width: 767px) {
  .message-send-cooldown {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    width: calc(100% - 28px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px));
    margin: 25px auto 32px;
    padding: 20px 18px;
    border-radius: 18px;
    box-shadow: 0 10px 27px rgba(9, 43, 87, .08);
  }

  .message-send-cooldown__icon {
    width: 46px;
    height: 46px;
  }

  .message-send-cooldown__icon svg {
    width: 25px;
    height: 25px;
  }

  .message-send-cooldown__title {
    font-size: 17px;
  }

  .message-send-cooldown__note {
    margin-top: 3px;
    font-size: 13px;
    line-height: 1.65;
  }
}

@media (max-width: 339px) {
  .message-send-cooldown {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 11px;
    width: calc(100% - 24px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px));
    padding: 18px 15px;
  }

  .message-send-cooldown__icon {
    width: 40px;
    height: 40px;
  }

  .message-send-cooldown__title {
    font-size: 16px;
  }

  .message-send-cooldown__note {
    font-size: 12.5px;
  }
}

.message-send-success__content {
  display: block;
  min-width: 0;
}

.message-send-success__title,
.message-send-success__note {
  display: block;
}

.message-send-success__title {
  color: var(--navy-900);
  font-size: clamp(18px, 1.45vw, 21px);
  font-weight: 800;
  line-height: 1.5;
}

.message-send-success__note {
  margin-top: 4px;
  color: #617287;
  font-size: clamp(13px, 1vw, 15px);
  font-weight: 500;
  line-height: 1.65;
}

.message-send-success__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  max-width: 100%;
  min-height: 40px;
  margin-top: 13px;
  padding: 8px 16px;
  color: #fff !important;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.45;
  text-align: center;
  text-decoration: none !important;
  background: linear-gradient(135deg, var(--navy-800), var(--blue-600));
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 11px;
  box-shadow: 0 7px 16px rgba(12, 80, 145, .16);
  box-sizing: border-box;
}

.message-send-success__action:hover,
.message-send-success__action:focus-visible {
  color: #fff !important;
  background: linear-gradient(135deg, var(--navy-900), var(--blue-500));
  box-shadow: 0 9px 20px rgba(12, 80, 145, .22);
}

.message-send-success__action:focus-visible {
  outline: 3px solid rgba(20, 131, 232, .24);
  outline-offset: 3px;
}

@media (max-width: 767px) {
  .message-send-success {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    width: calc(100% - 28px);
    margin: 24px auto 30px;
    padding: 18px;
    border-radius: 17px;
    box-shadow: 0 10px 26px rgba(9, 43, 87, .08);
  }

  .message-send-success__icon {
    width: 46px;
    height: 46px;
  }

  .message-send-success__title {
    font-size: 17px;
  }

  .message-send-success__note {
    margin-top: 3px;
    font-size: 13px;
    line-height: 1.55;
  }

  .message-send-success__action {
    min-height: 38px;
    margin-top: 10px;
    padding: 8px 13px;
    font-size: 12.5px;
    border-radius: 10px;
  }
}

@media (max-width: 360px) {
  .message-send-success {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 11px;
    width: calc(100% - 20px);
    padding: 15px 14px;
  }

  .message-send-success__icon {
    width: 40px;
    height: 40px;
  }

  .message-send-success__title {
    font-size: 16px;
  }

  .message-send-success__note {
    font-size: 12.5px;
  }

  .message-send-success__action {
    font-size: 12px;
  }
}

/* Message reading view: keep long-form content focused on every screen size. */
.page-account-messages .message-view-layout {
  width: min(100%, 960px) !important;
  max-width: 960px;
  margin: clamp(18px, 2vw, 28px) auto 0;
}

.page-account-messages .message-view-layout__content {
  width: 100% !important;
}

.page-account-messages .message-details {
  display: block;
  width: 100% !important;
  overflow: hidden;
  background: #fff;
  border: 1px solid #d8e4f0 !important;
  border-radius: 18px;
  box-shadow: 0 10px 28px rgba(9, 43, 87, .075);
  box-sizing: border-box;
}

.page-account-messages .message-details > tbody {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(230px, .55fr);
  width: 100%;
  min-width: 0;
  direction: rtl;
}

.page-account-messages .message-details > tbody > tr {
  display: grid;
  grid-template-columns: 128px minmax(0, 1fr);
  min-width: 0;
  direction: rtl;
}

.page-account-messages .message-details > tbody > tr:nth-child(1) {
  grid-column: 1;
}

.page-account-messages .message-details > tbody > tr:nth-child(2) {
  grid-column: 2;
  border-inline-start: 1px solid #e3ebf4;
}

.page-account-messages .message-details > tbody > tr:nth-child(3),
.page-account-messages .message-details > tbody > tr:nth-child(4),
.page-account-messages .message-details > tbody > tr:nth-child(5) {
  grid-column: 1 / -1;
}

.page-account-messages .message-details > tbody > tr:nth-child(-n + 3) {
  border-bottom: 1px solid #e3ebf4;
}

.page-account-messages .message-details > tbody > tr:nth-child(n + 4) {
  grid-template-columns: minmax(0, 1fr);
}

.page-account-messages .message-details > tbody > tr > td {
  display: flex;
  align-items: center;
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  border: 0 !important;
  box-sizing: border-box;
}

.page-account-messages .message-details__label {
  width: auto !important;
  padding: 11px 14px !important;
  color: #667b92;
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1.55;
  white-space: nowrap;
  background: #f3f7fc;
}

.page-account-messages .message-details__value {
  padding: 11px 14px !important;
  color: var(--ink-700);
  font-size: 14px;
  line-height: 1.55;
  background: #fff;
  overflow-wrap: anywhere;
}

.page-account-messages .message-details__value a {
  color: var(--blue-600) !important;
  font-weight: 800;
  text-decoration: none;
}

.page-account-messages .message-details > tbody > tr:nth-child(2) .message-details__value {
  color: #687b91;
  font-variant-numeric: tabular-nums;
}

.page-account-messages .message-details > tbody > tr:nth-child(3) .message-details__value {
  color: var(--navy-900);
  font-weight: 700;
}

.page-account-messages .message-details__title {
  grid-column: 1 / -1;
  min-height: 44px;
  padding: 10px 16px !important;
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.55;
  background: var(--navy-800);
  box-shadow: inset -4px 0 0 var(--pink-500);
}

.page-account-messages .message-details__body {
  grid-column: 1 / -1;
  align-items: flex-start !important;
  min-height: 0;
  padding: 20px 18px 22px !important;
  color: #17283e;
  font-size: 15px;
  line-height: 1.9;
  text-align: right;
  background: #fff;
}

.page-account-messages .message-actions--bottom {
  width: min(100%, 760px);
  max-width: 760px;
  margin: 14px auto 0;
  justify-content: center;
}

@media (min-width: 768px) {
  .page-account-messages .message-actions--bottom .message-action {
    flex: 0 1 220px;
    max-width: 240px;
  }

  .page-account-messages .message-actions--bottom .message-action--reply {
    flex-basis: 280px;
    max-width: 300px;
  }

  .page-account-messages .message-actions--bottom .message-action:only-child {
    flex-basis: 240px;
    max-width: 240px;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .page-account-messages .message-view-layout {
    width: min(100%, 820px) !important;
    max-width: 820px;
    margin-top: 20px;
  }

  .page-account-messages .message-details > tbody {
    grid-template-columns: minmax(0, 1.35fr) minmax(215px, .65fr);
  }

  .page-account-messages .message-details > tbody > tr {
    grid-template-columns: 116px minmax(0, 1fr);
  }

  .page-account-messages .message-details__body {
    min-height: 0;
    padding: 18px 17px 20px !important;
    font-size: 14.5px;
  }

  .page-account-messages .message-actions--bottom {
    width: min(100%, 680px);
    max-width: 680px;
  }
}

@media (max-width: 767px) {
  .page-account-messages .message-view-layout {
    width: 100% !important;
    max-width: 100%;
    margin: 14px auto 0;
  }

  .page-account-messages .message-details {
    border-radius: 16px;
    box-shadow: 0 6px 20px rgba(9, 43, 87, .065);
  }

  .page-account-messages .message-details > tbody {
    display: block;
    width: 100%;
  }

  .page-account-messages .message-details > tbody > tr {
    display: grid;
    grid-template-columns: 90px minmax(0, 1fr);
    width: 100%;
    border-inline-start: 0;
  }

  .page-account-messages .message-details > tbody > tr:nth-child(1),
  .page-account-messages .message-details > tbody > tr:nth-child(2),
  .page-account-messages .message-details > tbody > tr:nth-child(3),
  .page-account-messages .message-details > tbody > tr:nth-child(4),
  .page-account-messages .message-details > tbody > tr:nth-child(5) {
    grid-column: auto;
  }

  .page-account-messages .message-details > tbody > tr:nth-child(n + 4) {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-account-messages .message-details__label {
    min-height: 42px;
    padding: 8px 9px !important;
    font-size: 11.5px;
    line-height: 1.5;
  }

  .page-account-messages .message-details__value {
    min-height: 42px;
    padding: 8px 10px !important;
    font-size: 13px;
    line-height: 1.6;
  }

  .page-account-messages .message-details__title {
    min-height: 42px;
    padding: 9px 12px !important;
    font-size: 14px;
  }

  .page-account-messages .message-details__body {
    min-height: 0;
    padding: 15px 14px 17px !important;
    font-size: 14px;
    line-height: 1.85;
  }

  .page-account-messages .message-actions--bottom {
    width: 100%;
    max-width: none;
    margin-top: 10px;
  }
}

@media (max-width: 360px) {
  .page-account-messages .message-details > tbody > tr {
    grid-template-columns: 82px minmax(0, 1fr);
  }

  .page-account-messages .message-details__label {
    padding-inline: 7px !important;
    font-size: 11px;
  }

  .page-account-messages .message-details__value {
    padding-inline: 8px !important;
    font-size: 12.5px;
  }
}

/* Personal message reader: compact navigation and a focused letter-style card. */
.page-account-messages .mailbox-shortcuts {
  width: min(100%, 700px);
  gap: 10px;
  margin: 0 auto 10px;
}

.page-account-messages .mailbox-shortcut {
  flex-direction: row;
  gap: 10px;
  min-height: 68px;
  padding: 8px 14px;
  font-size: 14px;
  line-height: 1.45;
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 5px 16px rgba(9, 43, 87, .055);
}

.page-account-messages .mailbox-shortcut::before {
  width: 3px;
}

.page-account-messages .mailbox-shortcut img {
  width: 40px;
  height: 40px !important;
}

.page-account-messages .message-reader {
  width: min(100%, 880px);
  margin: 0 auto;
  overflow: hidden;
  color: #17283e;
  direction: rtl;
  text-align: right;
  background: #fff;
  border: 1px solid #d8e4f0;
  border-top: 4px solid var(--pink-500);
  border-radius: 20px;
  box-shadow: 0 10px 28px rgba(9, 43, 87, .075);
  box-sizing: border-box;
}

.page-account-messages .message-reader__header {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px 18px;
  padding: 18px 20px 16px;
  background: #fff;
  border-bottom: 1px solid #e7edf5;
}

.page-account-messages .message-reader__identity {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 9px;
  min-width: 0;
}

.page-account-messages .message-reader__eyebrow,
.page-account-messages .message-reader__subject-label,
.page-account-messages .message-reader__date-label {
  color: #71849a;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
}

.page-account-messages .message-reader__eyebrow {
  padding: 3px 8px;
  background: #f3f7fc;
  border-radius: 999px;
}

.page-account-messages .message-reader__sender {
  min-width: 0;
  color: var(--navy-900);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.page-account-messages .message-reader__sender a {
  color: var(--blue-600) !important;
  text-decoration: none;
}

.page-account-messages .message-reader__date {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  min-width: 0;
  padding: 5px 10px;
  color: #61758c;
  font-size: 12.5px;
  line-height: 1.5;
  white-space: nowrap;
  background: #f7f9fc;
  border-radius: 999px;
  font-variant-numeric: tabular-nums;
}

.page-account-messages .message-reader__tools {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
}

.page-account-messages .message-reader__options {
  position: relative;
  flex: 0 0 auto;
}

.page-account-messages .message-reader__options-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  min-height: 40px;
  padding: 0;
  color: #6f8498;
  font-size: 0;
  line-height: 0;
  list-style: none;
  background: #f7f9fc;
  border: 1px solid #edf1f5;
  border-radius: 12px;
  box-shadow: 0 2px 6px rgba(23, 63, 99, .05);
  cursor: pointer;
  user-select: none;
  box-sizing: border-box;
  transition:
    color .15s ease,
    background .15s ease,
    border-color .15s ease,
    box-shadow .15s ease;
}

.page-account-messages .message-reader__options-trigger::-webkit-details-marker {
  display: none;
}

.page-account-messages .message-reader__options-trigger::marker {
  content: "";
}

.page-account-messages .message-reader__options-dots {
  width: 18px;
  height: 6px;
  color: inherit;
  background:
    radial-gradient(circle, currentColor 1.5px, transparent 1.7px)
    0 50% / 6px 6px repeat-x;
}

.page-account-messages .message-reader__options[open] .message-reader__options-trigger {
  color: #a93258;
  background: #fff2f6;
  border-color: #f0d7df;
  box-shadow: 0 2px 8px rgba(112, 38, 65, .07);
}

.page-account-messages .message-reader__options[open] .message-reader__options-dots {
  color: var(--pink-600);
}

.page-account-messages .message-reader__options-menu {
  position: absolute;
  top: calc(100% + 7px);
  inset-inline-end: 0;
  z-index: 30;
  width: 190px;
  max-width: calc(100vw - 40px);
  padding: 6px;
  overflow: hidden;
  text-align: right;
  background: #fff;
  border: 1px solid #dce6f0;
  border-radius: 14px;
  box-shadow: 0 14px 34px rgba(9, 43, 87, .14);
  box-sizing: border-box;
}

.page-account-messages .message-option {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  padding: 9px 11px;
  color: var(--navy-900) !important;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.4;
  direction: rtl;
  text-decoration: none !important;
  border-radius: 10px;
  box-sizing: border-box;
}

.page-account-messages .message-option + .message-option {
  margin-top: 4px;
  padding-top: 12px;
  border-top: 1px solid #edf1f6;
  border-radius: 0 0 10px 10px;
}

.page-account-messages .message-option--delete {
  color: #b7355d !important;
}

.page-account-messages .message-option--block {
  color: #274766 !important;
}

.page-account-messages .message-option__icon {
  position: relative;
  display: inline-block;
  flex: 0 0 17px;
  width: 17px;
  height: 17px;
  color: inherit;
  font-size: 0;
  line-height: 0;
  box-sizing: border-box;
}

.page-account-messages .message-option__icon::before,
.page-account-messages .message-option__icon::after {
  position: absolute;
  display: block;
  content: "";
  box-sizing: border-box;
}

.page-account-messages .message-option__icon--delete::before {
  top: 6px;
  left: 4px;
  width: 9px;
  height: 9px;
  border: 2px solid currentColor;
  border-top: 0;
  border-radius: 0 0 2px 2px;
}

.page-account-messages .message-option__icon--delete::after {
  top: 3px;
  left: 2px;
  width: 13px;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
}

.page-account-messages .message-option__icon--block {
  border: 2px solid currentColor;
  border-radius: 50%;
}

.page-account-messages .message-option__icon--block::after {
  top: 6px;
  left: 1px;
  width: 11px;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
  transform: rotate(-45deg);
}

.page-account-messages .message-reader__options-trigger:focus {
  outline: none;
}

.page-account-messages .message-reader__options-trigger:focus-visible {
  outline: 3px solid rgba(8, 121, 232, .18);
  outline-offset: 2px;
}

.page-account-messages .message-option:focus-visible {
  outline: 2px solid rgba(8, 121, 232, .22);
  outline-offset: 2px;
}

.page-account-messages .message-reader__subject {
  grid-column: 1 / -1;
  display: flex;
  align-items: baseline;
  gap: 10px;
  min-width: 0;
  margin: 2px 0 0;
  padding: 12px 0 0;
  line-height: 1.6;
  border-top: 1px solid #edf1f6;
}

.page-account-messages .message-reader__subject-label {
  flex: 0 0 auto;
  color: var(--pink-600);
  font-size: 13px;
  line-height: 1.45;
  position: relative;
  top: 1px;
}

.page-account-messages .message-reader__subject-text {
  min-width: 0;
  color: var(--navy-900);
  font-size: 18px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.page-account-messages .message-reader__body {
  min-height: 110px;
  padding: 22px 20px 25px;
  color: #17283e;
  font-size: 15px;
  line-height: 1.95;
  text-align: right;
  white-space: normal;
  overflow-wrap: anywhere;
  background: #fffdfd;
  box-sizing: border-box;
}

.page-account-messages .message-reader__actions.message-actions--bottom {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 12px 20px 14px;
  direction: rtl;
  background: #fff;
  border-top: 1px solid #e3ebf4;
  box-sizing: border-box;
}

.page-account-messages .message-reader__actions .message-action {
  flex: 0 0 auto;
  width: 155px;
  max-width: calc(100% - 20px);
  min-height: 44px;
  padding: 7px 13px 7px 10px;
  gap: 9px;
  font-size: 13.5px;
  font-weight: 800;
  line-height: 1.4;
  direction: rtl;
  border-radius: 14px;
  box-shadow: 0 3px 10px rgba(9, 43, 87, .045);
}

.page-account-messages .message-reader__actions .message-action__icon {
  position: relative;
  display: inline-block;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  color: inherit;
  font-size: 0;
  line-height: 0;
  border-radius: 50%;
  box-sizing: border-box;
}

.page-account-messages .message-reader__actions .message-action__icon::before,
.page-account-messages .message-reader__actions .message-action__icon::after {
  position: absolute;
  display: block;
  content: "";
  box-sizing: border-box;
}

.page-account-messages .message-action__icon--reply::before {
  top: 12px;
  left: 5px;
  width: 13px;
  height: 9px;
  border-top: 2px solid currentColor;
  border-left: 2px solid currentColor;
  border-radius: 8px 0 0 0;
}

.page-account-messages .message-action__icon--reply::after {
  top: 9px;
  right: 7px;
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
}

.page-account-messages .message-action__icon--reply {
  color: #c43b66;
  background: #fff0f5;
}

.page-account-messages .message-reader__actions .message-action__icon--compose {
  height: 28px;
  color: #1372b4;
  background: #eef7ff;
}

.page-account-messages .message-action__icon--compose::before {
  top: 7px;
  left: 5px;
  width: 18px;
  height: 14px;
  border: 2px solid currentColor;
  border-radius: 3px;
}

.page-account-messages .message-action__icon--compose::after {
  top: 5px;
  left: 9px;
  width: 9px;
  height: 9px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
}

.page-account-messages .message-reader__actions .message-action--reply {
  color: #173f63 !important;
  background: #fff7fa;
  border-color: #e7c2ce;
  box-shadow: 0 3px 10px rgba(112, 38, 65, .06);
}

.page-account-messages .message-reader__actions .message-action--compose {
  width: 178px;
  color: #173f63 !important;
  background: #fff;
  border-color: #d6e2ed;
  box-shadow: 0 3px 10px rgba(9, 43, 87, .045);
}

.page-account-messages .message-reader__actions .message-action:only-child {
  flex: 0 0 auto;
  max-width: calc(100% - 20px);
}

@media (hover: hover) and (pointer: fine) {
  .page-account-messages .message-reader__options-trigger:hover {
    color: #2f5474;
    background: #f1f5f9;
    border-color: #dfe7ef;
    box-shadow: 0 3px 8px rgba(23, 63, 99, .075);
  }

  .page-account-messages .message-option--delete:hover {
    color: #a82f54 !important;
    background: #fff2f6;
  }

  .page-account-messages .message-option--block:hover {
    color: #183b5c !important;
    background: #f3f7fb;
  }

  .page-account-messages .message-reader__actions .message-action--reply:hover {
    color: #173f63 !important;
    background: #fff1f5;
    border-color: #dda7b8;
    box-shadow: 0 4px 12px rgba(112, 38, 65, .08);
  }

  .page-account-messages .message-reader__actions .message-action--reply:hover .message-action__icon--reply {
    background: #ffe5ed;
  }

  .page-account-messages .message-reader__actions .message-action--compose:hover {
    color: #173f63 !important;
    background: #f6fbff;
    border-color: #b9d9f0;
    box-shadow: 0 4px 12px rgba(9, 73, 120, .07);
  }

  .page-account-messages .message-reader__actions .message-action--compose:hover .message-action__icon--compose {
    background: #e2f2fe;
  }
}

.page-account-messages .message-reader__actions .message-action:active {
  background: #fff1f5;
  box-shadow: 0 2px 6px rgba(112, 38, 65, .045);
}

.page-account-messages .message-reader__actions .message-action--compose:active {
  background: #eef7ff;
  box-shadow: 0 2px 6px rgba(9, 73, 120, .045);
}

@media (min-width: 768px) {
  .page-account-messages .message-reader--long .message-reader__body {
    padding: 18px 20px 20px;
    line-height: 1.75;
    background: #fffdfd;
  }
}

@media (min-width: 1200px) and (max-width: 1439px) {
  .page-account-messages .mailbox-shortcuts {
    width: min(100%, 680px);
  }

  .page-account-messages .message-reader {
    width: min(100%, 820px);
  }
}

@media (min-width: 1024px) and (max-width: 1199px) {
  .page-account-messages .mailbox-shortcuts {
    width: min(100%, 660px);
  }

  .page-account-messages .message-reader {
    width: min(100%, 760px);
  }

  .page-account-messages .message-reader__body {
    min-height: 100px;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .page-account-messages .mailbox-shortcuts {
    width: min(calc(100% - 32px), 620px);
  }

  .page-account-messages .message-reader {
    width: min(calc(100% - 32px), 720px);
  }

  .page-account-messages .message-reader__body {
    min-height: 100px;
  }
}

@media (max-width: 767px) {
  .page-account-messages .mailbox-shortcuts {
    width: calc(100% - 10px);
    gap: 7px;
    margin: 0 auto 12px;
  }

  .page-account-messages .mailbox-shortcut {
    flex-direction: row;
    gap: 6px;
    min-height: 62px;
    padding: 6px 8px;
    font-size: 11.5px;
    border-radius: 12px;
    box-shadow: none;
  }

  .page-account-messages .mailbox-shortcut img {
    width: 34px;
    height: 34px !important;
  }

  .page-account-messages .message-reader {
    width: calc(100% - 10px);
    margin: 0 auto;
    border-top-width: 3px;
    border-radius: 16px;
    box-shadow: 0 6px 20px rgba(9, 43, 87, .065);
  }

  .page-account-messages .message-reader__header {
    gap: 8px 10px;
    padding: 14px 13px 12px;
  }

  .page-account-messages .message-reader__eyebrow,
  .page-account-messages .message-reader__subject-label,
  .page-account-messages .message-reader__date-label {
    font-size: 11px;
  }

  .page-account-messages .message-reader__sender {
    font-size: 14px;
  }

  .page-account-messages .message-reader__tools {
    gap: 6px;
  }

  .page-account-messages .message-reader__date {
    gap: 5px;
    padding: 4px 7px;
    font-size: 11.5px;
  }

  .page-account-messages .message-reader__date-label {
    display: none;
  }

  .page-account-messages .message-reader__options-trigger {
    width: 44px;
    min-height: 44px;
    padding: 0;
    font-size: 0;
  }

  .page-account-messages .message-reader__options-dots {
    width: 18px;
  }

  .page-account-messages .message-reader__options-menu {
    width: 184px;
  }

  .page-account-messages .message-option {
    min-height: 46px;
    font-size: 13px;
  }

  .page-account-messages .message-reader__subject {
    align-items: baseline;
    gap: 7px;
    padding-top: 10px;
  }

  .page-account-messages .message-reader__subject-label {
    font-size: 12.5px;
  }

  .page-account-messages .message-reader__subject-text {
    font-size: 15px;
  }

  .page-account-messages .message-reader__body {
    min-height: 0;
    padding: 16px 14px 18px;
    font-size: 14px;
    line-height: 1.85;
  }

  .page-account-messages .message-reader__actions.message-actions--bottom {
    display: flex;
    padding: 11px 14px 13px;
  }

  .page-account-messages .message-reader__actions .message-action {
    width: 155px;
    max-width: calc(100% - 18px);
    min-height: 44px;
    padding: 7px 12px 7px 9px;
    gap: 8px;
    font-size: 13.5px;
    border-radius: 14px;
  }

  .page-account-messages .message-reader__actions .message-action__icon {
    flex-basis: 28px;
    width: 28px;
    height: 28px;
  }

  .page-account-messages .message-reader__actions .message-action__icon--compose {
    height: 28px;
  }

  .page-account-messages .message-reader__actions .message-action--compose {
    width: 174px;
  }
}

@media (max-width: 420px) {
  .page-account-messages .message-reader__header {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-account-messages .message-reader__tools {
    justify-content: space-between;
    justify-self: stretch;
    width: 100%;
  }

  .page-account-messages .message-reader__subject {
    grid-column: 1;
  }
}

@media (max-width: 360px) {
  .page-account-messages .mailbox-shortcut {
    gap: 4px;
    padding-inline: 6px;
    font-size: 11px;
  }

  .page-account-messages .mailbox-shortcut img {
    width: 30px;
    height: 30px !important;
  }
}

/* New-message composer: one calm, focused card from recipient to send action. */
.new-message-composer-scope.page-account-messages .new-message-form {
  width: min(100%, 840px);
  max-width: 840px;
  margin: 0 auto;
}

.page-account-messages .new-message-form .new-message-layout {
  display: block;
}

.page-account-messages .new-message-form .new-message-editor {
  overflow: hidden;
  background: #fffdfd;
  border: 1px solid #d7e3ee;
  border-top: 4px solid #df5e84;
  border-radius: 24px;
  box-shadow: 0 12px 30px rgba(19, 57, 91, .07);
  scroll-margin-top: 24px;
}

.page-account-messages .new-message-form .new-message-editor__header {
  padding: 17px 20px;
  background: linear-gradient(135deg, #fff9fb 0%, #f6fbff 100%);
  border-bottom: 1px solid #e8eef4;
}

.page-account-messages .new-message-form .message-recipient {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
  gap: 13px;
  padding: 0;
  overflow: visible;
  text-align: right;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.page-account-messages .new-message-form .message-recipient__avatar-link,
.page-account-messages .new-message-form .message-recipient > a.message-recipient__avatar-link {
  flex: 0 0 auto;
  margin: 0;
  line-height: 0;
}

.page-account-messages .new-message-form .message-recipient__avatar {
  display: block;
  width: 58px;
  height: 58px !important;
  object-fit: cover;
  border: 3px solid #fff;
  border-radius: 50%;
  box-shadow:
    0 0 0 1px #d8e4ee,
    0 5px 13px rgba(23, 63, 99, .09);
}

.page-account-messages .new-message-form .message-recipient__identity {
  min-width: 0;
}

.page-account-messages .new-message-form .message-recipient h2 {
  margin: 0 0 3px;
  padding: 0;
  color: #173f63;
  font-size: 19px;
  font-weight: 850;
  line-height: 1.45;
  background: transparent;
}

.page-account-messages .new-message-form .message-recipient__line {
  display: flex;
  align-items: baseline;
  min-width: 0;
  gap: 6px;
  flex-wrap: wrap;
  line-height: 1.45;
}

.page-account-messages .new-message-form .message-recipient__eyebrow {
  color: #7a8ca0;
  font-size: 13px;
  font-weight: 700;
}

.page-account-messages .new-message-form .message-recipient__name {
  min-width: 0;
  color: #0879e8;
  font-size: 15px;
  font-weight: 850;
  overflow-wrap: anywhere;
}

.page-account-messages .new-message-form .new-message-editor__fields {
  padding: 3px 20px 5px;
}

.page-account-messages .new-message-form .new-message-editor .form-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 8px;
  padding: 15px 0 16px;
  font-size: 15px;
  border: 0;
}

.page-account-messages .new-message-form .new-message-editor .form-row + .form-row {
  border-top: 1px solid #edf2f6;
}

.page-account-messages .new-message-form .new-message-editor .form-label {
  width: fit-content;
  color: #173f63;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.5;
  cursor: pointer;
  justify-self: start;
}

.page-account .site-main .new-message-form .new-message-editor .form-row input[type="text"],
.page-account .site-main .new-message-form .new-message-editor .form-row textarea {
  width: 100% !important;
  max-width: 100% !important;
  padding: 11px 14px;
  color: #142b46;
  font-size: 16px;
  line-height: 1.65;
  direction: rtl;
  text-align: right;
  unicode-bidi: normal;
  background: #fff;
  border: 1px solid #c8d7e5;
  border-radius: 14px;
  box-shadow: inset 0 1px 2px rgba(23, 63, 99, .025);
  -webkit-appearance: none;
  appearance: none;
  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    background-color .18s ease;
}

.page-account .site-main .new-message-form .new-message-editor .form-row input[type="text"] {
  min-height: 50px;
}

.page-account .site-main .new-message-form .new-message-editor .form-row textarea {
  min-height: 200px;
  line-height: 1.85;
  white-space: pre-wrap;
  overflow-wrap: break-word;
  word-break: normal;
  resize: vertical;
}

.page-account .site-main .new-message-form .new-message-editor .form-row input::placeholder,
.page-account .site-main .new-message-form .new-message-editor .form-row textarea::placeholder {
  color: #65788c;
  opacity: 1;
}

.page-account .site-main .new-message-form .new-message-editor .form-row input[type="text"]:placeholder-shown,
.page-account .site-main .new-message-form .new-message-editor .form-row textarea:placeholder-shown {
  direction: rtl;
  text-align: right;
}

.page-account .site-main .new-message-form .new-message-editor .form-row input[type="text"]:focus,
.page-account .site-main .new-message-form .new-message-editor .form-row textarea:focus {
  background: #fff;
  border-color: #d85a80;
  outline: 3px solid rgba(216, 90, 128, .12);
  outline-offset: 0;
  box-shadow: 0 0 0 1px rgba(216, 90, 128, .04);
}

.page-account-messages .new-message-form .new-message-editor__actions.form-actions {
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 14px 20px 16px;
  background: #f9fbfd;
  border-top: 1px solid #e7edf3;
}

.page-account-messages .new-message-form .new-message-submit-wrap {
  position: relative;
  display: inline-flex;
  width: 190px;
  max-width: 100%;
  min-height: 46px;
}

.page-account-messages .new-message-form .new-message-submit {
  width: 100%;
  min-width: 0;
  min-height: 46px;
  margin: 0;
  padding-block: 8px;
  padding-inline: 46px 18px;
  color: #173f63 !important;
  font-size: 13.5px;
  font-weight: 800;
  line-height: 1.4;
  background: #fff7fa;
  border: 1px solid #e7c2ce;
  border-radius: 14px;
  box-shadow: 0 3px 10px rgba(112, 38, 65, .06);
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    background-color .16s ease,
    border-color .16s ease;
}

.page-account-messages .new-message-form .new-message-submit-icon {
  position: absolute;
  z-index: 2;
  inset-block-start: 50%;
  inset-inline-start: 14px;
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  color: #c43b66;
  background: #fff0f5;
  border: 0;
  border-radius: 50%;
  pointer-events: none;
  transform: translateY(-50%);
}

.page-account-messages .new-message-form .new-message-submit-icon svg {
  width: 19px;
  height: 19px;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.page-account-messages .new-message-form .new-message-submit-icon__heart {
  fill: #df5e84;
  stroke: none;
}

.page-account-messages .new-message-form .new-message-submit:focus-visible {
  border-color: #dda7b8 !important;
  outline: 3px solid rgba(216, 90, 128, .22);
  outline-offset: 3px;
  box-shadow: 0 4px 12px rgba(112, 38, 65, .1);
}

.page-account-messages .new-message-form .new-message-submit:active {
  transform: translateY(1px);
  background: #fff1f5;
  box-shadow: 0 2px 6px rgba(112, 38, 65, .045);
}

.page-account-messages .new-message-form[aria-busy="true"] .new-message-submit-wrap {
  opacity: .72;
  cursor: wait;
}

.page-account-messages .new-message-form[aria-busy="true"] .new-message-submit {
  cursor: wait;
}

@media (hover: hover) and (pointer: fine) {
  .page-account-messages .new-message-form .new-message-submit:hover {
    background: #fff1f5;
    border-color: #dda7b8;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(112, 38, 65, .08);
  }

  .page-account-messages .new-message-form .new-message-submit-wrap:hover .new-message-submit-icon {
    background: #ffe5ed;
  }
}

body.new-message-validation-open {
  overflow: hidden;
}

.new-message-composer-scope.page-account-messages .new-message-validation[hidden] {
  display: none !important;
}

.new-message-composer-scope.page-account-messages .new-message-validation {
  position: fixed;
  z-index: 70000;
  inset: 0;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  padding: 18px;
  overflow-y: auto;
  overscroll-behavior: contain;
  direction: rtl;
  background: rgba(5, 24, 45, .58);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}

.new-message-composer-scope.page-account-messages .new-message-validation__dialog {
  position: relative;
  width: min(100%, 420px);
  max-height: min(82vh, 560px);
  box-sizing: border-box;
  padding: 25px 24px 21px;
  overflow-y: auto;
  color: #173f63;
  text-align: center;
  background: #fffdfd;
  border: 1px solid #efd7df;
  border-radius: 22px;
  box-shadow: 0 24px 70px rgba(2, 20, 39, .26);
  animation: new-message-validation-enter .18s ease-out both;
}

.new-message-composer-scope.page-account-messages .new-message-validation__dialog::before {
  position: absolute;
  inset-block-start: 0;
  inset-inline: 32px;
  height: 4px;
  content: "";
  background: #df5e84;
  border-radius: 0 0 999px 999px;
}

.new-message-composer-scope.page-account-messages .new-message-validation__icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin: 0 auto 13px;
  color: #c43b66;
  background: #fff0f5;
  border: 1px solid #f4dbe3;
  border-radius: 50%;
}

.new-message-composer-scope.page-account-messages .new-message-validation__icon svg {
  width: 24px;
  height: 24px;
  overflow: visible;
  fill: currentColor;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
}

.new-message-composer-scope.page-account-messages .new-message-validation__icon path {
  fill: none;
}

.new-message-composer-scope.page-account-messages .new-message-validation__dialog h3 {
  margin: 0 0 7px;
  color: #173f63;
  font-size: 19px;
  font-weight: 850;
  line-height: 1.45;
}

.new-message-composer-scope.page-account-messages .new-message-validation__dialog p {
  margin: 0 auto 19px;
  max-width: 30ch;
  color: #65788c;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.8;
}

.new-message-composer-scope.page-account-messages .new-message-validation__button {
  width: min(100%, 144px);
  min-height: 44px;
  margin: 0;
  padding: 9px 20px;
  color: #fff;
  font: inherit;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.4;
  background: #0879e8;
  border: 1px solid #0879e8;
  border-radius: 13px;
  box-shadow: 0 6px 16px rgba(8, 121, 232, .18);
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  transition:
    transform .16s ease,
    background-color .16s ease,
    border-color .16s ease,
    box-shadow .16s ease;
}

.new-message-composer-scope.page-account-messages .new-message-validation__button:focus-visible {
  outline: 3px solid rgba(8, 121, 232, .23);
  outline-offset: 3px;
}

.new-message-composer-scope.page-account-messages .new-message-validation__button:active {
  transform: translateY(1px);
  background: #076dce;
  border-color: #076dce;
  box-shadow: 0 3px 9px rgba(8, 121, 232, .14);
}

@media (hover: hover) and (pointer: fine) {
  .new-message-composer-scope.page-account-messages .new-message-validation__button:hover {
    background: #076dce;
    border-color: #076dce;
    box-shadow: 0 8px 20px rgba(8, 121, 232, .22);
    transform: translateY(-1px);
  }
}

@keyframes new-message-validation-enter {
  from {
    opacity: 0;
    transform: translateY(8px) scale(.985);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .new-message-composer-scope.page-account-messages .new-message-validation__dialog {
    animation: none;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .new-message-composer-scope.page-account-messages .new-message-form {
    width: min(calc(100% - 32px), 720px);
    max-width: 720px;
  }

  .page-account .site-main .new-message-form .new-message-editor .form-row textarea {
    min-height: 180px;
  }
}

@media (max-width: 767px) {
  body.page-account-messages.new-message-keyboard-open .site-footer {
    display: none;
  }

  .new-message-composer-scope.page-account-messages .new-message-validation {
    padding: 14px;
  }

  .new-message-composer-scope.page-account-messages .new-message-validation__dialog {
    width: min(100%, 380px);
    max-height: calc(100vh - 28px);
    max-height: calc(100dvh - 28px);
    padding: 23px 18px 18px;
    border-radius: 20px;
  }

  .new-message-composer-scope.page-account-messages .new-message-validation__dialog::before {
    inset-inline: 26px;
  }

  .new-message-composer-scope.page-account-messages .new-message-validation__icon {
    width: 46px;
    height: 46px;
    margin-bottom: 11px;
  }

  .new-message-composer-scope.page-account-messages .new-message-validation__dialog h3 {
    font-size: 18px;
  }

  .new-message-composer-scope.page-account-messages .new-message-validation__dialog p {
    margin-bottom: 17px;
    font-size: 14px;
  }

  .new-message-composer-scope.page-account-messages .new-message-validation__button {
    width: min(100%, 156px);
    min-height: 46px;
  }

  .new-message-composer-scope.page-account-messages .new-message-form {
    width: 100%;
    max-width: none;
  }

  .page-account-messages .new-message-form .new-message-editor {
    border-radius: 20px;
    box-shadow: 0 9px 22px rgba(19, 57, 91, .065);
    scroll-margin-top: 12px;
  }

  .page-account-messages .new-message-form .new-message-editor__header {
    padding: 14px;
  }

  .page-account-messages .new-message-form .message-recipient {
    grid-template-columns: none;
    gap: 11px;
  }

  .page-account-messages .new-message-form .message-recipient__avatar-link {
    grid-column: auto;
    grid-row: auto;
    align-self: auto;
  }

  .page-account-messages .new-message-form .message-recipient__avatar {
    width: 52px;
    height: 52px !important;
  }

  .page-account-messages .new-message-form .message-recipient h2 {
    margin-bottom: 2px;
    font-size: 17px;
  }

  .page-account-messages .new-message-form .message-recipient__eyebrow {
    font-size: 12px;
  }

  .page-account-messages .new-message-form .message-recipient__name {
    font-size: 14px;
  }

  .page-account-messages .new-message-form .new-message-editor__fields {
    padding: 2px 14px 4px;
  }

  .page-account-messages .new-message-form .new-message-editor .form-row {
    gap: 7px;
    padding: 13px 0 14px;
  }

  .page-account-messages .new-message-form .new-message-editor .form-label {
    font-size: 14px;
  }

  .page-account .site-main .new-message-form .new-message-editor .form-row input[type="text"] {
    min-height: 48px;
  }

  .page-account .site-main .new-message-form .new-message-editor .form-row textarea {
    min-height: 165px;
    scroll-margin-bottom: 46vh;
  }

  .page-account-messages .new-message-form .new-message-editor__actions.form-actions {
    padding: 13px 14px 15px;
  }

  .page-account-messages .new-message-form .new-message-submit-wrap {
    width: min(100%, 190px);
  }

  .page-account-messages .new-message-form .new-message-submit {
    min-height: 46px;
    font-size: 13.5px;
    border-radius: 14px;
  }
}

@media (max-width: 380px) {
  .new-message-composer-scope.page-account-messages .new-message-validation {
    padding: 12px;
  }

  .new-message-composer-scope.page-account-messages .new-message-validation__dialog {
    max-height: calc(100vh - 24px);
    max-height: calc(100dvh - 24px);
    padding-inline: 15px;
  }

  .page-account-messages .new-message-form .new-message-editor__header {
    padding: 12px;
  }

  .page-account-messages .new-message-form .message-recipient__avatar {
    width: 48px;
    height: 48px !important;
  }

  .page-account-messages .new-message-form .new-message-editor__fields {
    padding-inline: 12px;
  }
}

/*
 * r141: calm, responsive inbox and outbox lists.
 * The full table is reserved for wide content areas. Tablets keep the clearer
 * card layout, while phones retain their proven compact structure.
 */
@media (min-width: 1200px) {
  .page-account-messages .messages-form--inbox .message-table,
  .page-account-messages .messages-form--outbox .message-table {
    table-layout: fixed;
  }

  .page-account-messages .messages-form--inbox .message-table__caption-inner,
  .page-account-messages .messages-form--outbox .message-table__caption-inner {
    min-height: 52px;
    padding: 11px 18px;
  }

  .page-account-messages .messages-form--inbox .message-table th,
  .page-account-messages .messages-form--outbox .message-table th {
    padding: 12px 16px;
    color: #607389;
    line-height: 1.35;
    vertical-align: middle;
    background: #f7f9fc;
  }

  .page-account-messages .messages-form--inbox .message-table td,
  .page-account-messages .messages-form--outbox .message-table td {
    padding: 13px 16px;
    vertical-align: middle;
    border-bottom-color: #e5edf4;
  }

  .page-account-messages .messages-form--inbox .message-table th:first-child,
  .page-account-messages .messages-form--inbox .message-table td:first-child,
  .page-account-messages .messages-form--outbox .message-table th:first-child,
  .page-account-messages .messages-form--outbox .message-table td:first-child {
    width: 80px;
    min-width: 80px;
    padding-inline: 8px;
    text-align: center;
    white-space: nowrap;
  }

  .page-account-messages .messages-form--inbox .message-table th:nth-child(2),
  .page-account-messages .messages-form--inbox .message-table td:nth-child(2),
  .page-account-messages .messages-form--outbox .message-table th:nth-child(2),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(2) {
    width: auto;
    min-width: 0;
    text-align: right;
  }

  .page-account-messages .messages-form--inbox .message-table th:nth-child(3),
  .page-account-messages .messages-form--inbox .message-table td:nth-child(3),
  .page-account-messages .messages-form--outbox .message-table th:nth-child(3),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(3) {
    width: 22%;
    text-align: center;
  }

  .page-account-messages .messages-form--inbox .message-table th:nth-child(4),
  .page-account-messages .messages-form--inbox .message-table td:nth-child(4),
  .page-account-messages .messages-form--outbox .message-table th:nth-child(4),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(4) {
    width: 150px;
    text-align: center;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
  }

  .page-account-messages .message-table--inbox .message-subject-content,
  .page-account-messages .message-table--outbox .message-subject-content {
    width: 100%;
    min-width: 0;
    flex-wrap: nowrap;
    justify-content: flex-start;
  }

  .page-account-messages .message-table--inbox .message-subject-content a,
  .page-account-messages .message-table--outbox .message-subject-content a {
    order: 1;
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .page-account-messages .message-table--inbox .message-status-badge {
    order: 2;
    min-height: 22px;
    padding: 2px 8px;
    color: #0b67ad;
    font-size: 10.5px;
    background: #eaf4ff;
    border-color: #c9e3f7;
    box-shadow: none;
  }

  .page-account-messages .message-table--inbox .message-read td,
  .page-account-messages .message-table--outbox tbody td {
    background: #fff;
  }

  .page-account-messages .message-table--inbox .message-unread td {
    color: #123b60;
    background: #f6faff;
  }
}

@media (min-width: 1200px) and (hover: hover) and (pointer: fine) {
  .page-account-messages .message-table--inbox tr.message-read:hover td,
  .page-account-messages .message-table--outbox tbody tr:hover td {
    background: #fbfdff;
  }

  .page-account-messages .message-table--inbox tr.message-unread:hover td {
    background: #f1f7fd;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .page-account-messages .messages-form--inbox .message-table,
  .page-account-messages .messages-form--inbox .message-table tbody,
  .page-account-messages .messages-form--inbox .message-table tr,
  .page-account-messages .messages-form--inbox .message-table td,
  .page-account-messages .messages-form--outbox .message-table,
  .page-account-messages .messages-form--outbox .message-table tbody,
  .page-account-messages .messages-form--outbox .message-table tr,
  .page-account-messages .messages-form--outbox .message-table td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
  }

  .page-account-messages .messages-form--inbox .message-table,
  .page-account-messages .messages-form--outbox .message-table {
    overflow: visible;
    background: transparent;
    border: 0;
    box-shadow: none;
  }

  .page-account-messages .messages-form--inbox .message-table caption,
  .page-account-messages .messages-form--outbox .message-table caption {
    display: block;
    width: 100%;
    margin-bottom: 10px;
    overflow: hidden;
    border-radius: 14px;
  }

  .page-account-messages .messages-form--inbox .message-table__caption-inner,
  .page-account-messages .messages-form--outbox .message-table__caption-inner {
    min-height: 52px;
    padding: 10px 15px;
  }

  .page-account-messages .messages-form--inbox .message-table thead,
  .page-account-messages .messages-form--outbox .message-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
  }

  .page-account-messages .messages-form--inbox .message-table tbody,
  .page-account-messages .messages-form--outbox .message-table tbody {
    display: grid;
    gap: 10px;
  }

  .page-account-messages .messages-form--inbox .message-table tr,
  .page-account-messages .messages-form--outbox .message-table tr {
    display: grid;
    grid-template-columns: 80px repeat(2, minmax(0, 1fr));
    overflow: hidden;
    background: #fff;
    border: 1px solid #d9e5ef;
    border-radius: 14px;
    box-shadow: 0 3px 12px rgba(6, 29, 59, .045);
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread {
    background: #f6faff;
    border-color: #c9e0f2;
  }

  .page-account-messages .messages-form--inbox .message-table td,
  .page-account-messages .messages-form--outbox .message-table td {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
    min-height: 68px;
    padding: 9px 12px;
    text-align: right;
    background: transparent;
    border: 0;
    border-inline-start: 1px solid #e3ecf4;
  }

  .page-account-messages .messages-form--inbox .message-table td::before,
  .page-account-messages .messages-form--outbox .message-table td::before {
    content: attr(data-label);
    color: #708398;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.35;
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(1),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(1) {
    grid-column: 1;
    grid-row: 2;
    align-items: center;
    border-inline-start: 0;
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(1)::before,
  .page-account-messages .messages-form--outbox .message-table td:nth-child(1)::before {
    white-space: nowrap;
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(2),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(2) {
    grid-column: 1 / -1;
    grid-row: 1;
    min-height: 52px;
    border-bottom: 1px solid #e3ecf4;
    border-inline-start: 0;
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(2)::before,
  .page-account-messages .messages-form--outbox .message-table td:nth-child(2)::before {
    display: none;
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(3),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(3) {
    grid-column: 2;
    grid-row: 2;
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(4),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(4) {
    grid-column: 3;
    grid-row: 2;
    white-space: normal;
    font-variant-numeric: tabular-nums;
  }

  .page-account-messages .messages-form--inbox .message-subject-content,
  .page-account-messages .messages-form--outbox .message-subject-content {
    width: 100%;
    min-width: 0;
    flex-wrap: nowrap;
  }

  .page-account-messages .messages-form--inbox .message-subject-content a,
  .page-account-messages .messages-form--outbox .message-subject-content a {
    display: -webkit-box;
    order: 1;
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    line-height: 1.5;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }

  .page-account-messages .messages-form--inbox .message-status-badge {
    order: 2;
    min-height: 22px;
    padding: 2px 8px;
    color: #0b67ad;
    font-size: 10px;
    background: #eaf4ff;
    border-color: #c9e3f7;
    box-shadow: none;
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(3),
  .page-account-messages .messages-form--inbox .message-table td:nth-child(4),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(3),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(4) {
    font-size: 13px;
    line-height: 1.45;
  }

  .page-account-messages .messages-form--inbox .message-table input[type="checkbox"],
  .page-account-messages .messages-form--outbox .message-table input[type="checkbox"] {
    width: 22px;
    height: 22px;
  }
}

@media (max-width: 767px) {
  .page-account-messages .message-table--inbox tr.message-unread {
    background: #f4f9fe;
    border-color: #c4ddef;
    box-shadow: 0 2px 10px rgba(9, 76, 128, .06);
  }

  .page-account-messages .message-table--inbox tr.message-unread td:nth-child(2) {
    background: #f7fbff;
    border-bottom-color: #d5e5f2;
  }

  .page-account-messages .message-table--inbox .message-status-badge {
    min-height: 22px;
    padding: 2px 7px;
    font-size: 10px;
    background: #1477c9;
    border-color: #106ab4;
    box-shadow: none;
  }

  .page-account-messages .message-table--inbox td:nth-child(1),
  .page-account-messages .message-table--outbox td:nth-child(1) {
    min-height: 40px;
    padding: 6px 11px;
  }

  .page-account-messages .message-table--inbox td:nth-child(1) input[type="checkbox"],
  .page-account-messages .message-table--outbox td:nth-child(1) input[type="checkbox"] {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
  }

  .page-account-messages .message-table--inbox td:nth-child(3),
  .page-account-messages .message-table--outbox td:nth-child(3) {
    overflow-wrap: anywhere;
  }

  .page-account-messages .messages-form--inbox .message-bulk-actions .sub-button,
  .page-account-messages .messages-form--outbox .message-bulk-actions .sub-button {
    min-height: 44px;
    font-size: 12.5px;
  }
}

/*
 * r142: refined large-screen message-list details.
 * Unread status stays calm and functional, while destructive actions retain
 * the site's warm pink accent. Phone cards remain exactly as approved in r141.
 */
@media (min-width: 768px) {
  .page-account-messages .messages-form--inbox,
  .page-account-messages .messages-form--outbox {
    width: min(100%, 1160px);
    margin-inline: auto;
  }

  .page-account-messages .messages-form--inbox .message-subject-content a,
  .page-account-messages .messages-form--outbox .message-subject-content a {
    flex: 0 1 auto;
    max-width: 100%;
  }

  .page-account-messages .messages-form--inbox .message-status-badge {
    min-height: 24px;
    padding: 3px 9px;
    color: #1167a3;
    font-size: 11px;
    line-height: 1.2;
    background: #eef6fd;
    border-color: #d2e6f6;
    box-shadow: none;
  }

  .page-account-messages .messages-form--inbox .message-table input[type="checkbox"],
  .page-account-messages .messages-form--outbox .message-table input[type="checkbox"] {
    cursor: pointer;
  }

  .page-account-messages .messages-form--inbox .message-table input[type="checkbox"]:focus-visible,
  .page-account-messages .messages-form--outbox .message-table input[type="checkbox"]:focus-visible {
    outline: 3px solid rgba(20, 119, 201, .2);
    outline-offset: 3px;
  }

  .page-account-messages .messages-form--inbox .message-bulk-actions,
  .page-account-messages .messages-form--outbox .message-bulk-actions {
    align-items: center;
    gap: 8px;
    width: fit-content;
    max-width: 100%;
    margin-top: 12px;
    margin-inline-end: auto;
    padding: 7px;
    background: #f7f9fc;
    border: 1px solid #dfe8f1;
    border-radius: 12px;
    box-shadow: 0 3px 10px rgba(6, 29, 59, .04);
  }

  .page-account-messages .messages-form--inbox .message-bulk-actions .sub-button,
  .page-account-messages .messages-form--outbox .message-bulk-actions .sub-button {
    min-height: 42px;
    padding-inline: 14px;
    border-radius: 9px;
  }

  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected),
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected) {
    color: var(--navy-800);
    background: #fff;
    border-color: #b9cadb;
    box-shadow: none;
  }

  .page-account-messages .messages-form--inbox .message-delete-selected:disabled,
  .page-account-messages .messages-form--outbox .message-delete-selected:disabled {
    color: #8795a5;
    background: #f2f5f8;
    border-color: #d7e0e9;
    box-shadow: none;
  }

  .page-account-messages .messages-form--inbox .message-delete-selected:not(:disabled),
  .page-account-messages .messages-form--outbox .message-delete-selected:not(:disabled) {
    color: #a63757;
    background: #fff3f6;
    border-color: #e8afbf;
    box-shadow: none;
  }
}

@media (min-width: 1200px) {
  .page-account-messages .messages-form--inbox .message-table input[type="checkbox"],
  .page-account-messages .messages-form--outbox .message-table input[type="checkbox"] {
    width: 22px;
    height: 22px;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread td:first-child {
    position: relative;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread td:first-child::after {
    position: absolute;
    inset-block: 0;
    inset-inline-start: 0;
    width: 3px;
    content: "";
    background: #5ba8df;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .page-account-messages .messages-form--inbox .message-table tr.message-unread {
    position: relative;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread::after {
    position: absolute;
    inset-block: 0;
    inset-inline-start: 0;
    width: 3px;
    content: "";
    background: #5ba8df;
  }

  .page-account-messages .messages-form--inbox .message-table input[type="checkbox"],
  .page-account-messages .messages-form--outbox .message-table input[type="checkbox"] {
    width: 26px;
    height: 26px;
  }

  .page-account-messages .messages-form--inbox .message-bulk-actions,
  .page-account-messages .messages-form--outbox .message-bulk-actions {
    width: 100%;
    margin-inline-end: 0;
    box-sizing: border-box;
  }

  .page-account-messages .messages-form--inbox .message-bulk-actions .sub-button,
  .page-account-messages .messages-form--outbox .message-bulk-actions .sub-button {
    flex: 1 1 0;
    min-width: 0;
  }
}

/*
 * r143: a warmer, calmer mailbox surface for a marriage-focused site.
 * The approved desktop table, tablet cards and phone grids are preserved;
 * only color, borders and emphasis are refined.
 */
.page-account-messages .messages-form--inbox .message-table caption,
.page-account-messages .messages-form--outbox .message-table caption {
  color: var(--navy-900);
  background: linear-gradient(135deg, #fffafb 0%, #f7fbff 100%);
  border: 1px solid #eadfe5;
  border-inline-start: 4px solid #d95b80;
  box-shadow: 0 4px 14px rgba(73, 35, 54, .045);
  box-sizing: border-box;
}

.page-account-messages .messages-form--inbox .message-table__title,
.page-account-messages .messages-form--outbox .message-table__title {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--navy-900);
}

.page-account-messages .messages-form--inbox .message-table__title::before,
.page-account-messages .messages-form--outbox .message-table__title::before {
  flex: 0 0 auto;
  width: 8px;
  height: 8px;
  background: #d95b80;
  border-radius: 50%;
  box-shadow: 0 0 0 5px #fff0f4;
  content: "";
}

.page-account-messages .mailbox-shortcut:first-child {
  background: linear-gradient(145deg, #fff 0%, #f8fbff 100%);
  border-color: #dce8f2;
}

.page-account-messages .mailbox-shortcut:nth-child(2) {
  background: linear-gradient(145deg, #fff 0%, #fff9fb 100%);
  border-color: #eadde3;
}

@media (min-width: 768px) {
  .page-account-messages .mailbox-shortcut {
    box-shadow: 0 4px 14px rgba(6, 29, 59, .045);
  }

  .page-account-messages .messages-form--inbox .message-status-badge {
    color: #a83456;
    background: #fff0f4;
    border-color: #edc1ce;
    box-shadow: none;
  }

  .page-account-messages .messages-form--inbox .message-table input[type="checkbox"],
  .page-account-messages .messages-form--outbox .message-table input[type="checkbox"] {
    accent-color: var(--pink-600);
  }

  .page-account-messages .messages-form--inbox .message-bulk-actions,
  .page-account-messages .messages-form--outbox .message-bulk-actions {
    background: #fcfafb;
    border-color: #e8dfe4;
    box-shadow: 0 3px 10px rgba(92, 42, 62, .035);
  }

  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected),
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):focus,
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):active,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected),
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):focus,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):active {
    color: var(--navy-800);
    background: #fff;
    border-color: #d6cbd0;
    box-shadow: none;
  }

  .page-account-messages .messages-form--inbox .message-delete-selected:disabled,
  .page-account-messages .messages-form--outbox .message-delete-selected:disabled {
    color: #8b8790;
    background: #f5f3f4;
    border-color: #dfd9dc;
    box-shadow: none;
  }

  .page-account-messages .messages-form--inbox .message-delete-selected:not(:disabled),
  .page-account-messages .messages-form--outbox .message-delete-selected:not(:disabled) {
    color: #a83255;
    background: #fff2f5;
    border-color: #e8b2c1;
    box-shadow: none;
  }
}

@media (min-width: 1200px) {
  .page-account-messages .messages-form--inbox .message-table,
  .page-account-messages .messages-form--outbox .message-table {
    border-color: #e4dde2;
    box-shadow: 0 8px 24px rgba(48, 31, 42, .055);
  }

  .page-account-messages .messages-form--inbox .message-table caption,
  .page-account-messages .messages-form--outbox .message-table caption {
    border-width: 0 0 1px;
    border-inline-start-width: 4px;
  }

  .page-account-messages .messages-form--inbox .message-table th,
  .page-account-messages .messages-form--outbox .message-table th {
    color: #6b7482;
    background: #faf9fb;
    border-bottom-color: #e9e3e7;
  }

  .page-account-messages .messages-form--inbox .message-table td,
  .page-account-messages .messages-form--outbox .message-table td {
    padding-block: 14px;
    border-bottom-color: #eee8ec;
  }

  .page-account-messages .message-table--inbox .message-read td,
  .page-account-messages .message-table--outbox tbody td {
    background: #fff;
  }

  .page-account-messages .message-table--inbox .message-unread td {
    color: #183a59;
    background: #fffafb;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread td:first-child::after {
    background: #d95b80;
  }
}

@media (min-width: 1200px) and (hover: hover) and (pointer: fine) {
  .page-account-messages .mailbox-shortcut {
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
  }

  .page-account-messages .mailbox-shortcut:first-child:hover {
    background: #f7fbff;
    border-color: #bcd8ed;
    box-shadow: 0 7px 18px rgba(6, 29, 59, .065);
    transform: translateY(-1px);
  }

  .page-account-messages .mailbox-shortcut:nth-child(2):hover {
    background: #fff8fa;
    border-color: #ebc6d1;
    box-shadow: 0 7px 18px rgba(92, 42, 62, .06);
    transform: translateY(-1px);
  }

  .page-account-messages .message-table--inbox tr.message-read:hover td,
  .page-account-messages .message-table--outbox tbody tr:hover td {
    background: #fffafc;
  }

  .page-account-messages .message-table--inbox tr.message-unread:hover td {
    background: #fff6f9;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .page-account-messages .messages-form--inbox .message-table caption,
  .page-account-messages .messages-form--outbox .message-table caption {
    border-radius: 14px;
  }

  .page-account-messages .messages-form--inbox .message-table tbody,
  .page-account-messages .messages-form--outbox .message-table tbody {
    gap: 12px;
  }

  .page-account-messages .messages-form--inbox .message-table tr,
  .page-account-messages .messages-form--outbox .message-table tr {
    background: #fff;
    border-color: #e7dfe4;
    border-radius: 16px;
    box-shadow: 0 4px 14px rgba(73, 35, 54, .045);
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(1),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(1) {
    background: #fbfafb;
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(2),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(2) {
    background: #fdfbfc;
    border-bottom-color: #e9e2e6;
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(3),
  .page-account-messages .messages-form--inbox .message-table td:nth-child(4),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(3),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(4) {
    background: #fff;
    border-inline-start-color: #f0eaee;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread {
    background: #fffafb;
    border-color: #efd5de;
    box-shadow: 0 3px 12px rgba(150, 47, 78, .055);
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread td {
    background: #fffafb;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread td:nth-child(1) {
    background: #fcfafb;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread td:nth-child(2) {
    background: #fff7fa;
    border-bottom-color: #ecdde3;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread::after {
    background: #d95b80;
  }
}

@media (max-width: 767px) {
  .page-account-messages .messages-form--inbox .message-table caption,
  .page-account-messages .messages-form--outbox .message-table caption {
    border-radius: 12px;
  }

  .page-account-messages .message-table--inbox tr,
  .page-account-messages .message-table--outbox tr {
    background: #fff;
    border-color: #e5e0e3;
    box-shadow: 0 3px 12px rgba(73, 35, 54, .045);
  }

  .page-account-messages .message-table--inbox td:nth-child(2),
  .page-account-messages .message-table--outbox td:nth-child(2) {
    background: #fdfbfc;
    border-bottom-color: #e8e3e7;
  }

  .page-account-messages .message-table--inbox td:nth-child(3),
  .page-account-messages .message-table--inbox td:nth-child(4),
  .page-account-messages .message-table--outbox td:nth-child(3),
  .page-account-messages .message-table--outbox td:nth-child(4) {
    background: #fff;
    border-bottom-color: #e8e3e7;
  }

  .page-account-messages .message-table--inbox td:nth-child(3),
  .page-account-messages .message-table--outbox td:nth-child(3) {
    border-inline-end-color: #e8e3e7;
  }

  .page-account-messages .message-table--inbox td:nth-child(1),
  .page-account-messages .message-table--outbox td:nth-child(1) {
    background: #fbfafb;
  }

  .page-account-messages .message-table--inbox tr.message-unread {
    background: #fffafb;
    border-color: #efd5de;
    box-shadow: 0 2px 10px rgba(150, 47, 78, .055);
  }

  .page-account-messages .message-table--inbox tr.message-unread td {
    background: #fffafb;
  }

  .page-account-messages .message-table--inbox tr.message-unread td:nth-child(1) {
    background: #fcfafb;
  }

  .page-account-messages .message-table--inbox tr.message-unread td:nth-child(2) {
    background: #fff7fa;
    border-bottom-color: #ecdde3;
  }

  .page-account-messages .message-table--inbox .message-subject-content {
    justify-content: flex-start;
  }

  .page-account-messages .message-table--inbox .message-subject-content a {
    flex: 0 1 auto;
    min-width: 0;
  }

  .page-account-messages .message-table--inbox .message-status-badge {
    flex: 0 0 auto;
    min-height: 21px;
    padding: 2px 7px;
    color: #a83456;
    font-size: 10px;
    background: #fff0f4;
    border-color: #edc1ce;
    box-shadow: none;
  }

  .page-account-messages .messages-form--inbox .message-table input[type="checkbox"],
  .page-account-messages .messages-form--outbox .message-table input[type="checkbox"] {
    accent-color: var(--pink-600);
  }

  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected),
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):hover,
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):focus,
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):active,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected),
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):hover,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):focus,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):active {
    color: var(--navy-800);
    background: #fff;
    border-color: #c9c1c6;
    box-shadow: none;
  }

  .page-account-messages .messages-form--inbox .message-delete-selected:disabled,
  .page-account-messages .messages-form--outbox .message-delete-selected:disabled {
    color: #8795a5;
    background: #f4f3f4;
    border-color: #ddd8dc;
    box-shadow: none;
  }

  .page-account-messages .messages-form--inbox .message-delete-selected:not(:disabled),
  .page-account-messages .messages-form--outbox .message-delete-selected:not(:disabled) {
    color: #a83255;
    background: #fff2f5;
    border-color: #e8b2c1;
    box-shadow: none;
  }
}

@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):hover,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):hover {
    color: var(--navy-900);
    background: #fff5f8;
    border-color: #e2afbd;
  }

  .page-account-messages .messages-form--inbox .message-delete-selected:not(:disabled):hover,
  .page-account-messages .messages-form--outbox .message-delete-selected:not(:disabled):hover {
    color: #922746;
    background: #ffe9ef;
    border-color: #df9caf;
  }
}

@media (max-width: 359px) {
  .page-account-messages .messages-form--inbox .message-bulk-actions .sub-button,
  .page-account-messages .messages-form--outbox .message-bulk-actions .sub-button {
    padding-inline: 5px;
    font-size: 11.5px;
  }
}

/*
 * r144: calm-blue mailbox identity with restrained rose accents.
 * Layout, ordering, links and controls remain exactly as approved in r143.
 */
.page-account-messages .messages-form--inbox .message-table caption,
.page-account-messages .messages-form--outbox .message-table caption {
  color: #0b3d72;
  background: linear-gradient(135deg, #edf6fc 0%, #f8fbfe 100%);
  border-color: #d2e2ee;
  border-inline-start-color: #5b9fcf;
  box-shadow: 0 4px 14px rgba(9, 43, 87, .05);
}

.page-account-messages .messages-form--inbox .message-table__title,
.page-account-messages .messages-form--outbox .message-table__title {
  color: #0b3d72;
}

.page-account-messages .messages-form--inbox .message-table__title::before,
.page-account-messages .messages-form--outbox .message-table__title::before {
  background: #cf416a;
  box-shadow: 0 0 0 5px #fff0f4;
}

.page-account-messages .mailbox-shortcut:first-child {
  background: linear-gradient(145deg, #fff 0%, #f5f9fd 100%);
  border-color: #d6e5f0;
}

.page-account-messages .mailbox-shortcut:nth-child(2) {
  background: linear-gradient(145deg, #fff 0%, #fffafc 100%);
  border-color: #e6dce1;
}

@media (min-width: 768px) {
  .page-account-messages .mailbox-shortcut {
    box-shadow: 0 4px 14px rgba(9, 43, 87, .045);
  }

  .page-account-messages .messages-form--inbox .message-table input[type="checkbox"],
  .page-account-messages .messages-form--outbox .message-table input[type="checkbox"] {
    accent-color: #2478b8;
  }

  .page-account-messages .messages-form--inbox .message-bulk-actions,
  .page-account-messages .messages-form--outbox .message-bulk-actions {
    background: #f7f9fc;
    border-color: #dfe7ef;
    box-shadow: 0 3px 10px rgba(9, 43, 87, .04);
  }

  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected),
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):focus,
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):active,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected),
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):focus,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):active {
    color: #0b3d72;
    background: #fff;
    border-color: #bfd1df;
    box-shadow: none;
  }
}

/*
 * r145: final responsive bulk-message actions.
 * The controls keep their own borders while the shared administrative-looking
 * surface is removed. Shorter Arabic labels stay readable at every width.
 */
.page-account-messages .messages-form--inbox .message-bulk-actions,
.page-account-messages .messages-form--outbox .message-bulk-actions {
  gap: 8px;
  min-width: 0;
  min-height: 44px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  box-sizing: border-box;
}

.page-account-messages .messages-form--inbox .message-bulk-actions .sub-button,
.page-account-messages .messages-form--outbox .message-bulk-actions .sub-button {
  min-height: 44px;
}

.page-account-messages .messages-form--inbox .message-select-all.is-all-selected,
.page-account-messages .messages-form--inbox .message-select-all.is-all-selected:hover,
.page-account-messages .messages-form--inbox .message-select-all.is-all-selected:focus,
.page-account-messages .messages-form--inbox .message-select-all.is-all-selected:active,
.page-account-messages .messages-form--outbox .message-select-all.is-all-selected,
.page-account-messages .messages-form--outbox .message-select-all.is-all-selected:hover,
.page-account-messages .messages-form--outbox .message-select-all.is-all-selected:focus,
.page-account-messages .messages-form--outbox .message-select-all.is-all-selected:active {
  color: #fff;
  background: #2478b8;
  border-color: #2478b8;
  box-shadow: none;
}

@media (max-width: 480px) {
  .page-account-messages .messages-form--inbox .message-bulk-actions,
  .page-account-messages .messages-form--outbox .message-bulk-actions {
    width: 100%;
    margin-inline: 0;
  }

  .page-account-messages .messages-form--inbox .message-bulk-actions .sub-button,
  .page-account-messages .messages-form--outbox .message-bulk-actions .sub-button {
    flex: 1 1 0;
    min-width: 0;
  }
}

@media (max-width: 359px) {
  .page-account-messages .messages-form--inbox .message-bulk-actions .sub-button,
  .page-account-messages .messages-form--outbox .message-bulk-actions .sub-button {
    padding-inline: 5px;
    font-size: 12.5px;
  }
}

@media (min-width: 481px) and (max-width: 767px) {
  .page-account-messages .messages-form--inbox .message-bulk-actions,
  .page-account-messages .messages-form--outbox .message-bulk-actions {
    width: min(100%, 520px);
    margin-inline: auto;
  }

  .page-account-messages .messages-form--inbox .message-bulk-actions .sub-button,
  .page-account-messages .messages-form--outbox .message-bulk-actions .sub-button {
    flex: 1 1 0;
    min-width: 0;
  }
}

@media (min-width: 768px) and (max-width: 899px) {
  .page-account-messages .messages-form--inbox .message-bulk-actions,
  .page-account-messages .messages-form--outbox .message-bulk-actions {
    width: 100%;
    margin-inline: 0;
  }
}

@media (min-width: 900px) and (max-width: 1199px) {
  .page-account-messages .messages-form--inbox .message-bulk-actions,
  .page-account-messages .messages-form--outbox .message-bulk-actions {
    width: min(100%, 640px);
    margin-inline-start: 0;
    margin-inline-end: auto;
  }
}

@media (min-width: 1200px) {
  .page-account-messages .messages-form--inbox .message-bulk-actions,
  .page-account-messages .messages-form--outbox .message-bulk-actions {
    width: fit-content;
    margin-inline-start: 0;
    margin-inline-end: auto;
  }
}

@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):hover,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):hover {
    color: #0b3d72;
    background: #eef6fb;
    border-color: #b9d1e3;
  }
}

@media (min-width: 1200px) {
  .page-account-messages .messages-form--inbox .message-table,
  .page-account-messages .messages-form--outbox .message-table {
    border-color: #d9e5ee;
    box-shadow: 0 8px 24px rgba(9, 43, 87, .06);
  }

  .page-account-messages .messages-form--inbox .message-table th,
  .page-account-messages .messages-form--outbox .message-table th {
    color: #607389;
    background: #f4f8fc;
    border-bottom-color: #e3ebf3;
  }

  .page-account-messages .messages-form--inbox .message-table td,
  .page-account-messages .messages-form--outbox .message-table td {
    border-bottom-color: #e3ebf3;
  }

  .page-account-messages .message-table--inbox .message-read td,
  .page-account-messages .message-table--outbox tbody td {
    background: #fff;
  }

  .page-account-messages .message-table--inbox .message-unread td {
    color: #153d61;
    background: #f3f8fc;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread td:first-child::after {
    background: #5b9fcf;
  }
}

@media (min-width: 1200px) and (hover: hover) and (pointer: fine) {
  .page-account-messages .mailbox-shortcut:first-child:hover {
    background: #f0f7fc;
    border-color: #b9d5e8;
    box-shadow: 0 7px 18px rgba(9, 43, 87, .07);
  }

  .page-account-messages .mailbox-shortcut:nth-child(2):hover {
    background: #fff7fa;
    border-color: #e5bdc9;
    box-shadow: 0 7px 18px rgba(9, 43, 87, .06);
  }

  .page-account-messages .message-table--inbox tr.message-read:hover td,
  .page-account-messages .message-table--outbox tbody tr:hover td {
    background: #f8fbfe;
  }

  .page-account-messages .message-table--inbox tr.message-unread:hover td {
    background: #eaf4fb;
  }

  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):hover,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):hover {
    color: #0b3d72;
    background: #eef6fb;
    border-color: #b9d1e3;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .page-account-messages .messages-form--inbox .message-table tr,
  .page-account-messages .messages-form--outbox .message-table tr {
    background: #fff;
    border-color: #dbe5ee;
    box-shadow: 0 4px 14px rgba(9, 43, 87, .05);
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(1),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(1) {
    background: #fafbfc;
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(2),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(2) {
    background: #f8fbfd;
    border-bottom-color: #e4ecf3;
  }

  .page-account-messages .messages-form--inbox .message-table td:nth-child(3),
  .page-account-messages .messages-form--inbox .message-table td:nth-child(4),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(3),
  .page-account-messages .messages-form--outbox .message-table td:nth-child(4) {
    background: #fff;
    border-inline-start-color: #e4ecf3;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread {
    background: #f3f8fc;
    border-color: #c9ddec;
    box-shadow: 0 3px 12px rgba(9, 62, 105, .055);
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread td {
    color: #153d61;
    background: #f3f8fc;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread td:nth-child(1) {
    background: #fafbfc;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread td:nth-child(2) {
    background: #eaf4fb;
    border-bottom-color: #d5e3ed;
  }

  .page-account-messages .messages-form--inbox .message-table tr.message-unread::after {
    background: #5b9fcf;
  }
}

@media (max-width: 767px) {
  .page-account-messages .message-table--inbox tr,
  .page-account-messages .message-table--outbox tr {
    background: #fff;
    border-color: #e0e8ef;
    box-shadow: 0 3px 12px rgba(9, 43, 87, .045);
  }

  .page-account-messages .message-table--inbox td:nth-child(1),
  .page-account-messages .message-table--outbox td:nth-child(1) {
    background: #fafbfc;
  }

  .page-account-messages .message-table--inbox td:nth-child(2),
  .page-account-messages .message-table--outbox td:nth-child(2) {
    background: #f8fbfd;
    border-bottom-color: #e4ecf3;
  }

  .page-account-messages .message-table--inbox td:nth-child(3),
  .page-account-messages .message-table--inbox td:nth-child(4),
  .page-account-messages .message-table--outbox td:nth-child(3),
  .page-account-messages .message-table--outbox td:nth-child(4) {
    background: #fff;
    border-bottom-color: #e4ecf3;
  }

  .page-account-messages .message-table--inbox td:nth-child(3),
  .page-account-messages .message-table--outbox td:nth-child(3) {
    border-inline-end-color: #e4ecf3;
  }

  .page-account-messages .message-table--inbox tr.message-unread {
    background: #f3f8fc;
    border-color: #c9ddec;
    box-shadow: 0 2px 10px rgba(9, 62, 105, .055);
  }

  .page-account-messages .message-table--inbox tr.message-unread td {
    color: #153d61;
    background: #f3f8fc;
  }

  .page-account-messages .message-table--inbox tr.message-unread td:nth-child(1) {
    background: #fafbfc;
  }

  .page-account-messages .message-table--inbox tr.message-unread td:nth-child(2) {
    background: #eaf4fb;
    border-bottom-color: #d5e3ed;
  }

  .page-account-messages .messages-form--inbox .message-table input[type="checkbox"],
  .page-account-messages .messages-form--outbox .message-table input[type="checkbox"] {
    accent-color: #2478b8;
  }

  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected),
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):hover,
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):focus,
  .page-account-messages .messages-form--inbox .message-select-all:not(.is-all-selected):active,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected),
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):hover,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):focus,
  .page-account-messages .messages-form--outbox .message-select-all:not(.is-all-selected):active {
    color: #0b3d72;
    background: #fff;
    border-color: #bfd1df;
    box-shadow: none;
  }
}

/* r148: romantic, responsive member-interest pages.
   Scoped to myfav / whofav / whovimyp so other account pages keep their layout. */
.page-account-connections .connection-hub {
  --connection-accent: #d84b76;
  --connection-accent-strong: #b9325c;
  --connection-accent-soft: #fff3f7;
  --connection-accent-line: #f1cad6;
  --connection-blue: #176fae;
  --connection-blue-strong: #0b477e;
  --connection-blue-soft: #eef7fd;
  --connection-ink: #0b315d;
  --connection-muted: #5e7389;
  --connection-line: #dbe7f0;
  width: min(100%, 1180px);
  min-width: 0;
  margin: 0 auto 24px;
  color: var(--connection-ink);
  direction: rtl;
  container-type: inline-size;
}

.page-account-connections .connection-hub--visitors {
  --connection-accent: #2e88c7;
  --connection-accent-strong: #176fae;
  --connection-accent-soft: #eef8fe;
  --connection-accent-line: #c9e4f4;
}

.page-account-connections .connection-hero {
  position: relative;
  display: flex;
  align-items: center;
  gap: clamp(16px, 2.4vw, 28px);
  min-height: 142px;
  margin-bottom: 16px;
  padding: clamp(20px, 3vw, 34px);
  overflow: hidden;
  background:
    radial-gradient(circle at 7% 16%, rgba(216, 75, 118, .1), transparent 25%),
    linear-gradient(135deg, #fff 12%, #f7fbfe 58%, #fff5f8 100%);
  border: 1px solid var(--connection-line);
  border-top: 4px solid var(--connection-accent);
  border-radius: 22px;
  box-shadow: 0 13px 34px rgba(8, 46, 84, .075);
}

.page-account-connections .connection-hub--visitors .connection-hero {
  background:
    radial-gradient(circle at 7% 16%, rgba(46, 136, 199, .11), transparent 25%),
    linear-gradient(135deg, #fff 10%, #f2f9fe 62%, #fff8fa 100%);
}

.page-account-connections .connection-hero::after {
  position: absolute;
  inset-inline-end: -18px;
  bottom: -34px;
  width: 136px;
  height: 136px;
  content: "";
  background: radial-gradient(circle, rgba(216, 75, 118, .09), rgba(216, 75, 118, 0) 69%);
  border-radius: 50%;
  pointer-events: none;
}

.page-account-connections .connection-hero__icon {
  position: relative;
  z-index: 1;
  display: grid;
  flex: 0 0 auto;
  width: clamp(66px, 8vw, 86px);
  height: clamp(66px, 8vw, 86px);
  place-items: center;
  color: var(--connection-accent);
  background: linear-gradient(145deg, #fff, var(--connection-accent-soft));
  border: 1px solid var(--connection-accent-line);
  border-radius: 24px;
  box-shadow: 0 10px 24px rgba(187, 50, 91, .1);
  transform: rotate(-2deg);
}

.page-account-connections .connection-hub--visitors .connection-hero__icon {
  box-shadow: 0 10px 24px rgba(23, 111, 174, .1);
}

.page-account-connections .connection-hero__icon svg {
  width: 58%;
  height: 58%;
  overflow: visible;
  fill: currentColor;
  stroke: none;
}

.page-account-connections .connection-hero__icon .connection-hero__spark {
  fill: #ef8aa8;
}

.page-account-connections .connection-hero__copy {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.page-account-connections .connection-hero__eyebrow {
  display: block;
  margin-bottom: 5px;
  color: var(--connection-accent-strong);
  font-size: 13px;
  font-weight: 800;
}

.page-account-connections .connection-hero h2 {
  margin: 0 0 7px;
  color: var(--connection-ink);
  font-size: clamp(23px, 2.7vw, 32px);
  line-height: 1.35;
}

.page-account-connections .connection-hero p {
  max-width: 720px;
  margin: 0;
  color: #566d84;
  font-size: clamp(14px, 1.6vw, 16px);
  line-height: 1.9;
}

.page-account-connections .connection-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0 0 18px;
  padding: 6px;
  background: #f6f9fc;
  border: 1px solid #e0e9f1;
  border-radius: 18px;
}

.page-account-connections .connection-tab {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  min-height: 48px;
  padding: 9px 12px;
  color: #526b83 !important;
  font-size: 14px;
  font-weight: 800;
  text-align: center;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 13px;
}

.page-account-connections .connection-tab svg {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.page-account-connections .connection-tab.is-active {
  color: var(--connection-accent-strong) !important;
  background: #fff;
  border-color: var(--connection-accent-line);
  box-shadow: 0 5px 16px rgba(10, 49, 90, .07);
}

.page-account-connections .connection-tab__detail {
  stroke: var(--connection-accent);
}

.page-account-connections .connection-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 430px), 1fr));
  gap: 16px;
  min-width: 0;
}

.page-account-connections .connection-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--connection-line);
  border-radius: 20px;
  box-shadow: 0 9px 26px rgba(8, 47, 85, .065);
}

.page-account-connections .connection-card::before {
  position: absolute;
  z-index: 1;
  inset: 0 0 auto;
  height: 4px;
  content: "";
  background: linear-gradient(90deg, var(--connection-accent), #ef8baa 52%, var(--connection-blue));
}

.page-account-connections .connection-hub--visitors .connection-card::before {
  background: linear-gradient(90deg, var(--connection-blue), #64acd7 70%, #e783a1);
}

.page-account-connections .connection-card__top {
  display: grid;
  grid-template-columns: 94px minmax(0, 1fr) 44px;
  align-items: center;
  gap: 14px;
  min-height: 138px;
  padding: 22px 20px 18px;
  background:
    radial-gradient(circle at 96% 7%, var(--connection-accent-soft), transparent 38%),
    linear-gradient(180deg, #fff, #fbfdff);
  border-bottom: 1px solid #e7edf3;
}

.page-account-connections .connection-card__top--simple {
  grid-template-columns: 94px minmax(0, 1fr);
}

.page-account-connections .connection-card__photo {
  display: block;
  width: 94px;
  height: 94px;
  padding: 4px;
  overflow: hidden;
  background: #fff;
  border: 2px solid var(--connection-accent-line);
  border-radius: 50%;
  box-shadow: 0 7px 18px rgba(14, 56, 94, .11);
}

.page-account-connections .connection-card__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}

.page-account-connections .connection-card__identity {
  min-width: 0;
}

.page-account-connections .connection-card__relation {
  display: block;
  margin-bottom: 3px;
  color: var(--connection-muted);
  font-size: 12px;
  font-weight: 700;
}

.page-account-connections .connection-card__identity h3 {
  max-width: 100%;
  margin: 0 0 7px;
  color: var(--connection-ink);
  font-size: clamp(19px, 2.2vw, 23px);
  line-height: 1.35;
}

.page-account-connections .connection-card__identity h3 a {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  color: var(--connection-blue) !important;
  text-overflow: ellipsis;
  vertical-align: top;
  white-space: nowrap;
}

.page-account-connections .connection-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 26px;
  padding: 4px 9px;
  color: #566b80;
  font-size: 11px;
  font-weight: 800;
  background: #f4f6f8;
  border: 1px solid #e4e8ec;
  border-radius: 999px;
}

.page-account-connections .connection-status i {
  width: 7px;
  height: 7px;
  background: #aeb7c0;
  border-radius: 50%;
}

.page-account-connections .connection-status--online {
  color: #267453;
  background: #effaf5;
  border-color: #ccebdc;
}

.page-account-connections .connection-status--online i {
  background: #36a875;
  box-shadow: 0 0 0 3px rgba(54, 168, 117, .12);
}

.page-account-connections .connection-card__quiet-action,
.page-account-connections .connection-card__profile-link {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  color: #75889a !important;
  background: rgba(255, 255, 255, .82);
  border: 1px solid #dce6ee;
  border-radius: 13px;
  box-shadow: 0 4px 12px rgba(10, 49, 90, .055);
  padding: 0;
  appearance: none;
  cursor: pointer;
  font: inherit;
}

.page-account-connections .connection-card__quiet-action--danger {
  color: #b94c69 !important;
  background: #fff8fa;
  border-color: #f0ced8;
}

.page-account-connections .connection-card__quiet-action svg,
.page-account-connections .connection-card__profile-link svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.page-account-connections .connection-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 16px;
  background: #fff;
}

.page-account-connections .connection-fact {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 66px;
  margin: 0;
  padding: 10px 12px;
  background: #f8fbfd;
  border: 1px solid #e6edf3;
  border-radius: 14px;
}

.page-account-connections .connection-fact--wide {
  grid-column: 1 / -1;
}

.page-account-connections .connection-fact__icon {
  display: grid;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  place-items: center;
  color: var(--connection-accent);
  background: var(--connection-accent-soft);
  border-radius: 11px;
}

.page-account-connections .connection-fact__icon svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.page-account-connections .connection-fact__copy {
  display: block;
  min-width: 0;
}

.page-account-connections .connection-fact__label,
.page-account-connections .connection-fact__value {
  display: block;
  min-width: 0;
  margin: 0;
}

.page-account-connections .connection-fact__label {
  margin-bottom: 2px;
  color: var(--connection-muted);
  font-size: 11px;
  font-weight: 700;
}

.page-account-connections .connection-fact__value {
  color: #173c62;
  font-size: 13px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.page-account-connections .connection-actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 130px), 1fr));
  gap: 9px;
  padding: 14px 16px 16px;
  background: #f9fbfd;
  border-top: 1px solid #e6edf3;
}

.page-account-connections .connection-action {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 0;
  min-height: 44px;
  padding: 9px 11px;
  color: #315b80 !important;
  font-size: 12px;
  font-weight: 800;
  text-align: center;
  background: #fff;
  border: 1px solid #d7e4ee;
  border-radius: 12px;
  appearance: none;
  cursor: pointer;
  font-family: inherit;
}

.page-account-connections .connection-action--primary {
  grid-column: 1 / -1;
  min-height: 48px;
  color: #fff !important;
  font-size: 13px;
  background: linear-gradient(135deg, var(--connection-blue-strong), var(--connection-blue));
  border-color: transparent;
  box-shadow: 0 7px 16px rgba(18, 101, 163, .17);
}

.page-account-connections .connection-action svg {
  flex: 0 0 auto;
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.page-account-connections .connection-action span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.page-account-connections .connection-pager {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 54px;
  margin: 20px auto 0;
  color: #71859a;
  font-size: 14px;
  font-weight: 800;
  text-align: center;
}

.page-account-connections .connection-pager:empty {
  display: none;
}

.page-account-connections .connection-pager a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 7px 10px;
  color: var(--connection-blue-strong) !important;
  background: #fff;
  border: 1px solid #d6e3ed;
  border-radius: 12px;
  box-shadow: 0 3px 10px rgba(8, 47, 85, .05);
}

.page-account-connections .connection-empty {
  display: grid;
  grid-column: 1 / -1;
  min-height: 240px;
  padding: 34px 22px;
  place-items: center;
  align-content: center;
  color: var(--connection-muted);
  text-align: center;
  background:
    radial-gradient(circle at 50% 0, var(--connection-accent-soft), transparent 47%),
    #fff;
  border: 1px dashed var(--connection-accent-line);
  border-radius: 20px;
}

.page-account-connections .connection-empty__icon {
  display: grid;
  width: 62px;
  height: 62px;
  margin-bottom: 12px;
  place-items: center;
  color: var(--connection-accent);
  background: var(--connection-accent-soft);
  border-radius: 20px;
}

.page-account-connections .connection-empty__icon svg {
  width: 30px;
  height: 30px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.page-account-connections .connection-empty h3 {
  margin: 0 0 7px;
  color: var(--connection-ink);
  font-size: 19px;
}

.page-account-connections .connection-empty p {
  max-width: 480px;
  margin: 0;
  color: var(--connection-muted);
  font-size: 13px;
  line-height: 1.85;
}

.page-account-connections .connection-tab,
.page-account-connections .connection-card__photo,
.page-account-connections .connection-card__identity h3 a,
.page-account-connections .connection-card__quiet-action,
.page-account-connections .connection-card__profile-link,
.page-account-connections .connection-action,
.page-account-connections .connection-pager a {
  transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.page-account-connections .connection-tab:focus-visible,
.page-account-connections .connection-card__photo:focus-visible,
.page-account-connections .connection-card__identity h3 a:focus-visible,
.page-account-connections .connection-card__quiet-action:focus-visible,
.page-account-connections .connection-card__profile-link:focus-visible,
.page-account-connections .connection-action:focus-visible,
.page-account-connections .connection-pager a:focus-visible {
  outline: 3px solid #176fae;
  outline-offset: 3px;
}

@media (hover: hover) and (pointer: fine) {
  .page-account-connections .connection-tab:not(.is-active):hover {
    color: var(--connection-blue-strong) !important;
    background: #fff;
    border-color: #dce7ef;
  }

  .page-account-connections .connection-card:hover {
    border-color: #cbdce8;
    box-shadow: 0 15px 36px rgba(8, 47, 85, .1);
    transform: translateY(-2px);
  }

  .page-account-connections .connection-card__photo:hover,
  .page-account-connections .connection-card__quiet-action:hover,
  .page-account-connections .connection-card__profile-link:hover,
  .page-account-connections .connection-action:not(.connection-action--primary):hover,
  .page-account-connections .connection-pager a:hover {
    border-color: #aac9dd;
    box-shadow: 0 7px 17px rgba(8, 47, 85, .1);
    transform: translateY(-1px);
  }

  .page-account-connections .connection-card__identity h3 a:hover {
    color: var(--connection-accent-strong) !important;
  }

  .page-account-connections .connection-action--primary:hover {
    box-shadow: 0 10px 22px rgba(18, 101, 163, .25);
    transform: translateY(-1px);
  }

  .page-account-connections .connection-card__quiet-action--danger:hover {
    color: #9f284c !important;
    background: #fff1f5;
    border-color: #e8afbf;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  body.page-account-connections .site-layout.has-right-sidebar {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main"
      "right";
  }

  body.page-account-connections .site-layout.has-left-sidebar {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main"
      "left";
  }

  body.page-account-connections .site-layout.has-two-sidebars {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-areas:
      "main main"
      "right left";
  }

  body.page-account-connections .site-sidebar-right,
  body.page-account-connections .site-sidebar-left {
    width: 100%;
    max-width: 360px;
  }

  body.page-account-connections .site-sidebar-right {
    justify-self: start;
  }

  body.page-account-connections .site-sidebar-left {
    justify-self: end;
  }
}

@container (max-width: 620px) {
  .page-account-connections .connection-card__top {
    grid-template-columns: 82px minmax(0, 1fr) 44px;
    gap: 11px;
    min-height: 124px;
    padding: 19px 16px 15px;
  }

  .page-account-connections .connection-card__top--simple {
    grid-template-columns: 82px minmax(0, 1fr);
  }

  .page-account-connections .connection-card__photo {
    width: 82px;
    height: 82px;
  }
}

@media (max-width: 767px) {
  body.page-account-connections .site-layout.has-left-sidebar {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main"
      "left";
  }

  body.page-account-connections .site-layout.has-left-sidebar .site-sidebar-left {
    width: 100%;
    max-width: none;
  }

  .page-account-connections .account-welcome {
    display: block;
    margin: 0 0 10px;
    overflow: visible;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }

  .page-account-connections .account-welcome__identity,
  .page-account-connections .account-welcome__link,
  .page-account-connections .account-welcome__last-login {
    display: none;
  }

  .page-account-connections .account-welcome__membership {
    display: flex;
    justify-content: space-between;
    min-height: 40px;
    padding: 7px 12px;
    font-size: 12px;
    background: var(--blue-100);
    border: 1px solid #cfe3f8;
    border-radius: 10px;
  }

  .page-account-connections .connection-hub {
    margin-bottom: 14px;
  }

  .page-account-connections .connection-hero {
    gap: 13px;
    min-height: 112px;
    margin-bottom: 11px;
    padding: 16px 14px;
    border-top-width: 3px;
    border-radius: 16px;
    box-shadow: 0 7px 20px rgba(8, 46, 84, .065);
  }

  .page-account-connections .connection-hero__icon {
    width: 58px;
    height: 58px;
    border-radius: 18px;
  }

  .page-account-connections .connection-hero__eyebrow {
    margin-bottom: 2px;
    font-size: 11px;
  }

  .page-account-connections .connection-hero h2 {
    margin-bottom: 4px;
    font-size: 20px;
  }

  .page-account-connections .connection-hero p {
    font-size: 12.5px;
    line-height: 1.75;
  }

  .page-account-connections .connection-tabs {
    gap: 5px;
    margin-bottom: 12px;
    padding: 4px;
    border-radius: 14px;
  }

  .page-account-connections .connection-tab {
    flex-direction: column;
    gap: 3px;
    min-height: 55px;
    padding: 6px 3px;
    font-size: 11px;
    line-height: 1.25;
    border-radius: 10px;
  }

  .page-account-connections .connection-tab svg {
    width: 18px;
    height: 18px;
  }

  .page-account-connections .connection-grid {
    gap: 11px;
  }

  .page-account-connections .connection-card {
    border-radius: 16px;
    box-shadow: 0 5px 16px rgba(8, 47, 85, .055);
  }

  .page-account-connections .connection-card__top {
    grid-template-columns: 74px minmax(0, 1fr) 44px;
    gap: 10px;
    min-height: 114px;
    padding: 17px 13px 14px;
  }

  .page-account-connections .connection-card__top--simple {
    grid-template-columns: 74px minmax(0, 1fr);
  }

  .page-account-connections .connection-card__photo {
    width: 74px;
    height: 74px;
    padding: 3px;
  }

  .page-account-connections .connection-card__relation {
    font-size: 11px;
  }

  .page-account-connections .connection-card__identity h3 {
    margin-bottom: 5px;
    font-size: 18px;
  }

  .page-account-connections .connection-status {
    min-height: 24px;
    padding: 3px 7px;
    font-size: 10.5px;
  }

  .page-account-connections .connection-card__quiet-action,
  .page-account-connections .connection-card__profile-link {
    width: 44px;
    height: 44px;
    border-radius: 12px;
  }

  .page-account-connections .connection-facts {
    gap: 7px;
    padding: 11px;
  }

  .page-account-connections .connection-fact {
    gap: 7px;
    min-height: 59px;
    padding: 8px;
    border-radius: 11px;
  }

  .page-account-connections .connection-fact__icon {
    width: 31px;
    height: 31px;
    border-radius: 9px;
  }

  .page-account-connections .connection-fact__icon svg {
    width: 17px;
    height: 17px;
  }

  .page-account-connections .connection-fact__label {
    font-size: 10.5px;
  }

  .page-account-connections .connection-fact__value {
    font-size: 11.5px;
  }

  .page-account-connections .connection-actions {
    gap: 7px;
    padding: 11px;
  }

  .page-account-connections .connection-action {
    min-height: 44px;
    padding: 8px 7px;
    font-size: 11px;
  }

  .page-account-connections .connection-action--primary {
    min-height: 47px;
    font-size: 12px;
  }

  .page-account-connections .connection-pager {
    margin-top: 14px;
  }
}

@media (max-width: 359px) {
  .page-account-connections .connection-hero__icon {
    display: none;
  }

  .page-account-connections .connection-tab {
    font-size: 10px;
  }

  .page-account-connections .connection-card__top {
    grid-template-columns: 65px minmax(0, 1fr) 44px;
    gap: 7px;
    padding-inline: 10px;
  }

  .page-account-connections .connection-card__top--simple {
    grid-template-columns: 65px minmax(0, 1fr);
  }

  .page-account-connections .connection-card__photo {
    width: 65px;
    height: 65px;
  }

  .page-account-connections .connection-facts,
  .page-account-connections .connection-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-account-connections .connection-fact,
  .page-account-connections .connection-fact--wide,
  .page-account-connections .connection-action,
  .page-account-connections .connection-action--primary {
    grid-column: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-account-connections .connection-tab,
  .page-account-connections .connection-card,
  .page-account-connections .connection-card__photo,
  .page-account-connections .connection-card__quiet-action,
  .page-account-connections .connection-card__profile-link,
  .page-account-connections .connection-action,
  .page-account-connections .connection-pager a {
    transition: none;
  }
}

/* r151 — blue-led, modern profile information editor */
body.page-account-info .site-main {
  min-width: 0;
}

body.page-account-info .site-main > .cent {
  display: none;
}

body.page-account-info .site-main > .centbody {
  overflow: visible;
  background: transparent;
  border: 0;
  border-radius: 0;
}

body.page-account-info .site-main > .centbody > .centervalue {
  padding: 0;
}

body.page-account-info .site-main > .centdown {
  margin-bottom: 0;
}

.page-account-info .profile-editor {
  position: relative;
  width: min(100%, 980px);
  margin-inline: auto;
  color: var(--ink-900);
  container-type: inline-size;
}

.page-account-info .profile-editor-hero {
  position: relative;
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  align-items: center;
  gap: clamp(14px, 2vw, 22px);
  min-height: 138px;
  margin-bottom: 22px;
  padding: clamp(20px, 3vw, 32px);
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 18%, rgba(8, 121, 232, .1) 0 66px, transparent 67px),
    linear-gradient(135deg, #eaf4ff 0%, #f7fbff 58%, #eef7ff 100%);
  border: 1px solid #d6e6f5;
  border-top: 5px solid #075fc7;
  border-radius: 24px;
  box-shadow: 0 14px 36px rgba(9, 43, 87, .08);
}

.page-account-info .profile-editor-hero::after {
  position: absolute;
  inset-inline-end: -36px;
  bottom: -52px;
  width: 132px;
  height: 132px;
  content: "";
  border: 20px solid rgba(8, 121, 232, .055);
  border-radius: 50%;
  pointer-events: none;
}

.page-account-info .profile-editor-hero__icon {
  position: relative;
  z-index: 1;
  display: grid;
  width: 76px;
  height: 76px;
  place-items: center;
  color: var(--navy-800);
  background: rgba(255, 255, 255, .86);
  border: 1px solid #d7e7f7;
  border-radius: 22px;
  box-shadow: 0 10px 24px rgba(9, 43, 87, .09);
}

.page-account-info .profile-editor-hero__icon svg {
  display: block;
  width: 58px;
  height: 58px;
}

.page-account-info .profile-editor-hero__content {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.page-account-info .profile-editor-hero h2 {
  margin: 0;
  color: var(--navy-900);
  font-size: clamp(23px, 2.3vw, 31px);
  line-height: 1.35;
}

.page-account-info .profile-editor-hero p {
  max-width: 62ch;
  margin: 7px 0 0;
  color: var(--ink-500);
  font-size: clamp(14px, 1.2vw, 16px);
  line-height: 1.85;
}

.page-account-info .profile-editor > .info {
  width: 100%;
  margin: 0 0 18px;
  padding: 14px 16px;
  color: var(--navy-800);
  font-size: 13px;
  line-height: 1.8;
  text-align: right !important;
  background: #eef7ff;
  border: 1px solid #c7def5;
  border-radius: 15px;
  box-shadow: none;
}

.page-account-info .profile-editor > .info img {
  width: 24px;
  height: 24px;
  margin-inline-end: 6px;
  object-fit: contain;
}

.page-account-info .profile-editor-form {
  display: block;
  width: 100%;
  margin: 0;
}

.page-account-info .profile-editor-form > br {
  display: none;
}

.page-account-info .profile-editor-form > table.tab {
  display: block;
  width: 100% !important;
  margin: 0 0 20px;
  overflow: hidden;
  background: var(--surface);
  border: 1px solid #d9e6f2 !important;
  border-radius: 20px;
  border-collapse: separate;
  table-layout: auto !important;
  box-shadow: 0 8px 24px rgba(9, 43, 87, .065);
}

.page-account-info .profile-editor-form > table.tab > tbody {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
}

.page-account-info .profile-editor-form > table.tab > tbody > tr {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  min-width: 0;
  min-height: 116px;
  padding: 16px 18px 18px;
  background: #fff;
  border: 0 !important;
  border-bottom: 1px solid #edf2f7 !important;
}

.page-account-info .profile-editor-form > table.tab > tbody > tr:not(:has(> td)) {
  display: none !important;
  min-height: 0;
  padding: 0;
  border: 0 !important;
}

.page-account-info .profile-editor-form > table.tab > tbody > tr:nth-child(2n + 1):not(:has(> .h-td)) {
  background: #fbfdff;
}

.page-account-info .profile-editor-form > table.tab > tbody > tr:has(> .h-td) {
  grid-column: 1 / -1;
  display: block;
  min-height: 0;
  padding: 0;
  background: linear-gradient(90deg, #eaf4ff, #f7fbff 64%, #eef7ff);
  border-bottom: 1px solid #dce8f3 !important;
}

.page-account-info .profile-editor-form > table.tab > tbody > tr:has(> .h-td) > .h-td {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 64px;
  padding: 15px 22px !important;
  color: var(--navy-900);
  font-size: clamp(17px, 1.65vw, 21px);
  font-weight: 850;
  line-height: 1.45;
  text-align: right !important;
  background: transparent !important;
  border: 0 !important;
}

.page-account-info .profile-editor-form > table.tab > tbody > tr:has(> .h-td) > .h-td::before {
  width: 10px;
  height: 10px;
  margin-inline-end: 11px;
  content: "";
  flex: 0 0 10px;
  background: var(--pink-500);
  border-radius: 50%;
  box-shadow: 0 0 0 6px rgba(220, 99, 133, .11);
}

.page-account-info .profile-editor-form > table.tab > tbody > tr:has(> .h-td) > .h-td::after {
  position: absolute;
  inset-block: 0;
  inset-inline-end: 0;
  width: 4px;
  content: "";
  background: var(--blue-500);
}

.page-account-info .profile-editor-form > table.tab > tbody > tr:has(> .h-td) > .h-td p,
.page-account-info .profile-editor-form > table.tab > tbody > tr:has(> .h-td) > .h-td a {
  margin: 0;
  color: inherit;
  font: inherit;
  text-decoration: none;
}

.page-account-info .profile-editor-form > table.tab > tbody > tr:not(:has(> .h-td)) > .r-td,
.page-account-info .profile-editor-form > table.tab > tbody > tr:not(:has(> .h-td)) > .l-td {
  display: block;
  width: 100% !important;
  max-width: none;
  height: auto !important;
  min-width: 0;
  color: var(--ink-900);
  text-align: right !important;
  background: transparent !important;
  border: 0 !important;
}

.page-account-info .profile-editor-form > table.tab > tbody > tr:not(:has(> .h-td)) > .r-td {
  min-height: 29px;
  padding: 0 2px 8px !important;
  color: var(--ink-700);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.5;
}

.page-account-info .profile-editor-form > table.tab > tbody > tr:not(:has(> .h-td)) > .l-td {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: flex-start;
  gap: 7px 10px;
  padding: 0 !important;
  color: var(--navy-800);
  font-size: 14px;
  font-weight: 650;
  line-height: 1.7;
}

.page-account-info .profile-editor-form .auto-style1 {
  display: inline-flex;
  margin-inline: 4px;
  padding: 2px 7px;
  color: var(--pink-600) !important;
  font-size: 10px;
  font-weight: 750;
  line-height: 1.5;
  background: var(--pink-100);
  border-radius: 999px;
}

.page-account-info .profile-editor-form input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
.page-account-info .profile-editor-form select,
.page-account-info .profile-editor-form textarea {
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  color: var(--ink-900);
  font: 500 16px/1.6 var(--font);
  background-color: #fbfdff;
  border: 1px solid #cbdced;
  border-radius: 12px;
  box-shadow: inset 0 1px 1px rgba(6, 29, 59, .02);
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.page-account-info .profile-editor-form input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
.page-account-info .profile-editor-form select {
  min-height: 48px;
  padding: 9px 12px;
}

.page-account-info .profile-editor-form select {
  flex: 1 1 190px;
  padding-inline-end: 34px;
  cursor: pointer;
}

.page-account-info .profile-editor-form input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]) {
  flex: 1 1 190px;
}

.page-account-info .profile-editor-form input[dir="ltr"] {
  direction: ltr;
  text-align: left;
}

.page-account-info .profile-editor-form textarea {
  min-height: 176px;
  padding: 14px 15px;
  line-height: 1.9;
  text-align: right;
  resize: vertical;
}

.page-account-info .profile-editor-form input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]):focus,
.page-account-info .profile-editor-form select:focus,
.page-account-info .profile-editor-form textarea:focus {
  outline: 0;
  background-color: #fff;
  border-color: var(--blue-500);
  box-shadow: 0 0 0 4px rgba(8, 121, 232, .14);
}

.page-account-info .profile-editor-form .l-td > span[id] {
  flex: 0 0 100%;
  width: 100%;
  color: var(--danger);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.6;
}

.page-account-info .profile-editor-form .l-td > span[id]:empty {
  display: none;
}

.page-account-info .profile-editor-form > div[align="center"],
.page-account-info .profile-editor-form .profile-editor-story div[align="center"] {
  width: 100%;
  margin: 0 0 16px;
}

.page-account-info .profile-editor-form center {
  display: block;
  width: 100%;
}

.page-account-info .profile-editor-form table.groundnotice {
  display: block;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden;
  color: var(--navy-800);
  background: linear-gradient(135deg, #f7fbff, #eef7ff);
  border: 1px solid #c7def5 !important;
  border-radius: 15px;
  box-shadow: none;
}

.page-account-info .profile-editor-form table.groundnotice tbody,
.page-account-info .profile-editor-form table.groundnotice tr,
.page-account-info .profile-editor-form table.groundnotice td {
  display: block;
  width: 100% !important;
  max-width: none;
  height: auto !important;
  background: transparent !important;
  border: 0 !important;
}

.page-account-info .profile-editor-form table.groundnotice .notice {
  position: relative;
  padding: 13px 16px 13px 46px !important;
  color: var(--navy-800);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.8;
  text-align: right !important;
}

.page-account-info .profile-editor-form table.groundnotice .notice::after {
  position: absolute;
  inset-inline-end: 15px;
  top: 14px;
  display: grid;
  width: 23px;
  height: 23px;
  content: "✓";
  place-items: center;
  color: #075fc7;
  font-size: 13px;
  background: #fff;
  border: 1px solid #c7def5;
  border-radius: 50%;
}

.page-account-info .profile-editor-form table.groundnotice ul {
  margin: 0;
  padding-inline-start: 18px;
}

.page-account-info .profile-editor-form table.groundnotice li {
  margin: 3px 0;
}

.page-account-info .profile-editor-form table.groundnotice p {
  margin: 0;
  line-height: inherit;
}

.page-account-info .profile-editor-form > table.profile-editor-story > tbody > tr:not(:has(> .h-td)) {
  grid-column: 1 / -1;
  min-height: 0;
  padding: clamp(17px, 2.5vw, 25px);
  background: linear-gradient(135deg, #fff, #f7fbff);
  border-inline-end: 0 !important;
}

.page-account-info .profile-editor-form > table.profile-editor-story > tbody > tr:not(:has(> .h-td)) > .l-td {
  display: block;
}

.page-account-info .profile-editor-form > table.profile-editor-story p[align="center"] {
  margin: 0;
}

.page-account-info .profile-editor-form > table.profile-editor-story small {
  display: inline-flex;
  margin-top: 9px;
  padding: 5px 10px;
  color: var(--ink-500);
  font-size: 11px;
  font-weight: 650;
  background: #f4f7fb;
  border-radius: 999px;
}

.page-account-info .profile-editor-save {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin: 2px 0 0;
  padding: 22px;
  background: linear-gradient(135deg, #f6faff, #eef7ff);
  border: 1px solid #dbe7f2;
  border-radius: 20px;
  box-shadow: 0 8px 22px rgba(9, 43, 87, .055);
}

.page-account-info .profile-editor-validation-summary {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: min(100%, 720px);
  margin: 0 auto 16px;
  padding: 12px 15px;
  color: #8b2948;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.7;
  text-align: center;
  background: #fff6f8;
  border: 1px solid #efb9c9;
  border-radius: 14px;
  box-shadow: 0 7px 18px rgba(139, 41, 72, .07);
}

.page-account-info .profile-editor-validation-summary[hidden] {
  display: none !important;
}

.page-account-info .profile-editor-validation-summary__icon {
  display: grid;
  width: 25px;
  height: 25px;
  content: "";
  flex: 0 0 25px;
  place-items: center;
  color: #fff;
  font-size: 14px;
  font-weight: 850;
  line-height: 1;
  background: var(--pink-600);
  border-radius: 50%;
  box-shadow: 0 0 0 5px rgba(214, 61, 108, .09);
}

body.profile-update-feedback-page .site-container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100dvh;
}

body.profile-update-feedback-page .site-layout {
  flex: 1 0 auto;
  width: 100%;
}

body.profile-update-feedback-page .site-footer {
  margin-top: auto;
}

.profile-update-feedback {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  width: min(680px, calc(100% - 40px));
  margin: clamp(28px, 5vw, 62px) auto;
  padding: 26px 30px;
  color: var(--navy-900);
  direction: rtl;
  text-align: right;
  background: linear-gradient(135deg, #fff 0%, #f3fbf7 100%);
  border: 1px solid #c4e3d5;
  border-radius: 20px;
  box-shadow: 0 14px 34px rgba(9, 43, 87, .09);
  box-sizing: border-box;
}

.profile-update-feedback--error {
  background: linear-gradient(135deg, #fff 0%, #fff7f9 100%);
  border-color: #efc0ce;
}

.profile-update-feedback__icon {
  display: grid;
  width: 56px;
  height: 56px;
  place-items: center;
  color: #147a58;
  background: #e7f7ef;
  border: 1px solid #b9dfcf;
  border-radius: 50%;
}

.profile-update-feedback--error .profile-update-feedback__icon {
  color: #b52f59;
  background: #fff0f4;
  border-color: #efb9c9;
}

.profile-update-feedback__icon svg {
  display: block;
  width: 29px;
  height: 29px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.profile-update-feedback__content,
.profile-update-feedback__title,
.profile-update-feedback__note {
  display: block;
  min-width: 0;
}

.profile-update-feedback__title {
  color: var(--navy-900);
  font-size: clamp(18px, 1.45vw, 21px);
  font-weight: 800;
  line-height: 1.5;
}

.profile-update-feedback__note {
  margin-top: 4px;
  color: #617287;
  font-size: clamp(13px, 1vw, 15px);
  font-weight: 500;
  line-height: 1.65;
}

.page-account-info .profile-editor-form .profile-editor-field--invalid {
  background-color: #fffafb !important;
  border-color: #d63d6c !important;
  box-shadow: 0 0 0 4px rgba(214, 61, 108, .12) !important;
  scroll-margin-block: 120px;
}

body.page-account-info .profile-editor-form input.profile-editor-save__button {
  width: min(100%, 260px);
  min-height: 52px;
  margin: 0;
  padding: 11px 28px;
  color: #fff;
  font: 800 16px/1.4 var(--font);
  cursor: pointer;
  background: linear-gradient(135deg, var(--navy-800), #0b73c9);
  border: 0;
  border-radius: 14px;
  box-shadow: 0 9px 20px rgba(8, 91, 165, .18);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

body.page-account-info .profile-editor-form input.profile-editor-save__button:hover {
  filter: brightness(1.05);
  box-shadow: 0 12px 25px rgba(8, 91, 165, .23);
  transform: translateY(-1px);
}

body.page-account-info .profile-editor-form input.profile-editor-save__button:focus-visible {
  outline: 3px solid rgba(8, 121, 232, .34);
  outline-offset: 3px;
}

.page-account-info .profile-editor-save__hint {
  color: var(--ink-500);
  font-size: 11px;
  font-weight: 600;
}

@container (min-width: 760px) {
  .page-account-info .profile-editor-form > table.tab > tbody {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-account-info .profile-editor-form > table.tab > tbody > tr:nth-child(even):not(:last-child):not(:has(> .h-td)) {
    border-inline-end: 1px solid #edf2f7 !important;
  }

  .page-account-info .profile-editor-form select[name="age"],
  .page-account-info .profile-editor-form select[name="length"],
  .page-account-info .profile-editor-form select[name="weight"],
  .page-account-info .profile-editor-form select[name="number_of_children"],
  .page-account-info .profile-editor-form select[name="dou_want_children"] {
    width: min(100%, 220px) !important;
    flex: 0 1 220px;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  body.page-account-info .site-layout.has-right-sidebar {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main"
      "right";
  }

  body.page-account-info .site-layout.has-left-sidebar {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main"
      "left";
  }

  body.page-account-info .site-layout.has-two-sidebars {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-areas:
      "main main"
      "right left";
  }

  body.page-account-info .site-sidebar-right {
    width: min(100%, 980px);
    margin-inline: auto;
  }
}

@media (max-width: 899px) {
  .page-account-info .profile-editor-form > table.tab > tbody > tr {
    min-height: 0;
  }
}

@media (max-width: 767px) {
  body.page-account-info .site-layout.has-left-sidebar {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main"
      "left";
  }

  .page-account-info .profile-editor {
    width: 100%;
  }

  .page-account-info .profile-editor-hero {
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 12px;
    min-height: 118px;
    padding: 17px 15px;
    border-radius: 20px;
  }

  .page-account-info .profile-editor-hero__icon {
    width: 58px;
    height: 58px;
    border-radius: 17px;
  }

  .page-account-info .profile-editor-hero__icon svg {
    width: 47px;
    height: 47px;
  }

  .page-account-info .profile-editor-hero h2 {
    font-size: 21px;
  }

  .page-account-info .profile-editor-hero p {
    margin-top: 5px;
    font-size: 12px;
    line-height: 1.7;
  }

  .page-account-info .profile-editor-form > table.tab {
    margin-bottom: 14px;
    border-radius: 17px;
  }

  .page-account-info .profile-editor-form > table.tab > tbody > tr:has(> .h-td) > .h-td {
    min-height: 56px;
    padding: 13px 16px !important;
    font-size: 17px;
  }

  .page-account-info .profile-editor-form > table.tab > tbody > tr {
    padding: 14px;
  }

  .page-account-info .profile-editor-form > table.tab > tbody > tr:not(:has(> .h-td)) > .r-td {
    font-size: 13px;
  }

  .page-account-info .profile-editor-form input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
  .page-account-info .profile-editor-form select {
    min-height: 48px;
    font-size: 16px;
  }

  .page-account-info .profile-editor-form textarea {
    min-height: 158px;
    font-size: 16px;
  }

  .page-account-info .profile-editor-form table.groundnotice .notice {
    padding: 12px 13px 12px 42px !important;
    font-size: 11px;
  }

  .page-account-info .profile-editor-save {
    padding: 17px 13px;
    border-radius: 17px;
  }

  .page-account-info .profile-editor-validation-summary {
    margin-bottom: 13px;
    padding: 11px 12px;
    font-size: 12px;
    border-radius: 13px;
  }

  .profile-update-feedback {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    width: calc(100% - 28px);
    margin: 24px auto 30px;
    padding: 18px;
    border-radius: 17px;
    box-shadow: 0 10px 26px rgba(9, 43, 87, .08);
  }

  .profile-update-feedback__icon {
    width: 46px;
    height: 46px;
  }

  .profile-update-feedback__icon svg {
    width: 25px;
    height: 25px;
  }

  .profile-update-feedback__title {
    font-size: 17px;
  }

  .profile-update-feedback__note {
    margin-top: 3px;
    font-size: 13px;
    line-height: 1.55;
  }

  body.page-account-info .profile-editor-form input.profile-editor-save__button {
    width: min(100%, 280px);
    min-height: 50px;
    font-size: 15px;
  }
}

@media (max-width: 359px) {
  .page-account-info .profile-editor-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-account-info .profile-editor-hero__icon {
    display: none;
  }

  .profile-update-feedback {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 11px;
    width: calc(100% - 20px);
    padding: 15px 14px;
  }

  .profile-update-feedback__icon {
    width: 40px;
    height: 40px;
  }

  .profile-update-feedback__title {
    font-size: 16px;
  }

  .profile-update-feedback__note {
    font-size: 12.5px;
  }

}

@media (prefers-reduced-motion: reduce) {
  .page-account-info .profile-editor-form input,
  .page-account-info .profile-editor-form select,
  .page-account-info .profile-editor-form textarea,
  body.page-account-info .profile-editor-form input.profile-editor-save__button {
    transition: none;
  }
}

/* Modern media management: media hub, profile photo and personal album */
.media-suite {
  --media-navy: #0d3769;
  --media-blue: #0d7fe8;
  --media-blue-soft: #edf7ff;
  --media-pink: #d63e6b;
  --media-pink-soft: #fff3f7;
  --media-ink: #102f56;
  --media-muted: #71849d;
  --media-line: #d8e6f3;
  --media-surface: #fff;
  box-sizing: border-box;
  width: min(100%, 1120px);
  margin: 28px auto 36px;
  color: var(--media-ink);
  direction: rtl;
  text-align: right;
}

.media-suite *,
.media-suite *::before,
.media-suite *::after {
  box-sizing: border-box;
}

.media-suite a {
  text-decoration: none;
}

.media-suite svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.media-suite-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  align-items: center;
  gap: 22px;
  min-height: 184px;
  padding: 30px 34px;
  overflow: hidden;
  border: 1px solid #cfe2f3;
  border-radius: 26px;
  background:
    radial-gradient(circle at 7% 110%, rgba(214, 62, 107, .12), transparent 36%),
    linear-gradient(135deg, #f8fbff 0%, #edf7ff 72%, #fef8fa 100%);
  box-shadow: 0 14px 36px rgba(9, 50, 94, .08);
}

.media-suite-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset-inline-start: -54px;
  bottom: -76px;
  width: 210px;
  height: 210px;
  border: 32px solid rgba(13, 127, 232, .055);
  border-radius: 50%;
}

.media-suite-hero__icon {
  display: grid;
  place-items: center;
  width: 88px;
  height: 88px;
  padding: 18px;
  color: var(--media-blue);
  border: 1px solid rgba(13, 127, 232, .15);
  border-radius: 24px;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 10px 24px rgba(13, 78, 138, .09);
}

.media-suite-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  margin-bottom: 7px;
  padding: 4px 12px;
  color: var(--media-pink);
  font-size: 13px;
  font-weight: 700;
  border-radius: 999px;
  background: rgba(255, 255, 255, .78);
}

.media-suite-hero h2 {
  margin: 0;
  color: var(--media-navy);
  font-size: clamp(27px, 3vw, 36px);
  line-height: 1.35;
}

.media-suite-hero p {
  max-width: 690px;
  margin: 8px 0 0;
  color: #5d7592;
  font-size: 16px;
  line-height: 1.9;
}

.media-suite-hero--compact {
  min-height: 146px;
  grid-template-columns: 72px minmax(0, 1fr);
  padding-block: 24px;
}

.media-suite-hero--compact .media-suite-hero__icon {
  width: 72px;
  height: 72px;
  padding: 15px;
  border-radius: 21px;
}

.media-suite-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  margin-bottom: 4px;
  color: var(--media-blue);
  font-size: 13px;
  font-weight: 700;
}

.media-suite-back span {
  font-size: 21px;
  line-height: 1;
}

.media-hub-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin-top: 24px;
}

.media-hub-card {
  position: relative;
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr);
  grid-template-areas:
    "icon copy"
    "icon action";
  align-items: center;
  gap: 7px 18px;
  min-height: 192px;
  padding: 26px;
  overflow: hidden;
  color: var(--media-ink);
  border: 1px solid var(--media-line);
  border-radius: 23px;
  background: var(--media-surface);
  box-shadow: 0 11px 28px rgba(9, 50, 94, .07);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.media-hub-card::after {
  content: "";
  position: absolute;
  inset-block: 0;
  inset-inline-end: 0;
  width: 5px;
  background: var(--media-blue);
}

.media-hub-card--album::after {
  background: var(--media-pink);
}

.media-hub-card:hover,
.media-hub-card:focus-visible {
  color: var(--media-ink);
  border-color: #bcd9ef;
  box-shadow: 0 17px 38px rgba(9, 50, 94, .12);
  transform: translateY(-3px);
}

.media-hub-card:focus-visible,
.media-suite a:focus-visible,
.media-suite input:focus-visible {
  outline: 3px solid rgba(13, 127, 232, .24);
  outline-offset: 3px;
}

.media-hub-card__icon {
  grid-area: icon;
  display: grid;
  place-items: center;
  width: 78px;
  height: 78px;
  padding: 16px;
  color: var(--media-blue);
  border-radius: 22px;
  background: var(--media-blue-soft);
}

.media-hub-card--album .media-hub-card__icon {
  color: var(--media-pink);
  background: var(--media-pink-soft);
}

.media-hub-card__copy {
  grid-area: copy;
  display: block;
}

.media-hub-card__copy strong {
  display: block;
  color: var(--media-navy);
  font-size: 21px;
  line-height: 1.45;
}

.media-hub-card__copy small {
  display: block;
  margin-top: 6px;
  color: var(--media-muted);
  font-size: 14px;
  line-height: 1.75;
}

.media-hub-card__action {
  grid-area: action;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: max-content;
  min-height: 34px;
  color: var(--media-blue);
  font-size: 13px;
  font-weight: 700;
}

.media-hub-card--album .media-hub-card__action {
  color: var(--media-pink);
}

.media-hub-card__action b {
  font-size: 22px;
  line-height: 1;
}

.media-suite-note {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  margin-top: 22px;
  padding: 17px 20px;
  border: 1px solid #dbe8f3;
  border-radius: 18px;
  background: #f8fbfe;
}

.media-suite-note > span {
  width: 42px;
  height: 42px;
  padding: 9px;
  color: var(--media-blue);
  border-radius: 13px;
  background: var(--media-blue-soft);
}

.media-suite-note p {
  margin: 0;
  color: #617690;
  font-size: 13px;
  line-height: 1.75;
}

.media-suite-note strong {
  color: var(--media-navy);
}

.media-profile-grid {
  display: grid;
  grid-template-columns: minmax(310px, .82fr) minmax(410px, 1.18fr);
  gap: 22px;
  margin-top: 24px;
}

.media-current-photo,
.media-upload-card,
.media-gallery,
.media-limit-note {
  border: 1px solid var(--media-line);
  border-radius: 22px;
  background: var(--media-surface);
  box-shadow: 0 10px 28px rgba(9, 50, 94, .065);
}

.media-current-photo {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 25px;
}

.media-current-photo__head {
  width: 100%;
  margin-bottom: 18px;
}

.media-current-photo__head span,
.media-upload-card__head span:not(.media-upload-card__icon),
.media-gallery__head small {
  color: var(--media-pink);
  font-size: 12px;
  font-weight: 700;
}

.media-current-photo__head h3,
.media-upload-card__head h3,
.media-gallery__head h3 {
  margin: 3px 0 0;
  color: var(--media-navy);
  font-size: 19px;
  line-height: 1.45;
}

.media-current-photo__frame {
  display: grid;
  place-items: center;
  width: 210px;
  height: 210px;
  padding: 7px;
  overflow: hidden;
  border: 1px solid #cfe0ef;
  border-radius: 50%;
  background: linear-gradient(145deg, #edf7ff, #fff5f8);
  box-shadow: 0 12px 30px rgba(9, 50, 94, .1);
}

.media-current-photo__frame img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

.media-delete-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  margin-top: 19px;
  padding: 8px 15px;
  color: #bd365d;
  font-size: 13px;
  font-weight: 700;
  border: 1px solid #f1c4d1;
  border-radius: 13px;
  background: #fff8fa;
}

.media-delete-link:hover,
.media-delete-link:focus-visible {
  color: #a52249;
  background: #fff0f4;
}

.media-delete-link svg {
  width: 19px;
  height: 19px;
}

.media-upload-card {
  min-width: 0;
  padding: 25px;
}

.media-upload-card__head {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  align-items: center;
  gap: 13px;
  margin-bottom: 21px;
  padding-bottom: 17px;
  border-bottom: 1px solid #e4edf5;
}

.media-upload-card__icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  padding: 12px;
  color: var(--media-blue);
  border-radius: 16px;
  background: var(--media-blue-soft);
}

.media-file-label {
  display: block;
  margin-bottom: 8px;
  color: var(--media-navy);
  font-size: 14px;
  font-weight: 700;
}

.media-file-input {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 52px;
  padding: 6px;
  overflow: hidden;
  color: #5f738c;
  font: inherit;
  font-size: 14px;
  border: 1px solid #cbddec;
  border-radius: 14px;
  background: #fbfdff;
}

body.page-account .site-main .media-suite input.media-file-input {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  padding: 6px;
  border-radius: 14px;
  background: #fbfdff;
}

.media-file-input::file-selector-button {
  min-height: 38px;
  margin-inline-end: 10px;
  padding: 7px 16px;
  color: var(--media-navy);
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  border: 0;
  border-radius: 10px;
  background: var(--media-blue-soft);
  cursor: pointer;
}

.media-file-input::-webkit-file-upload-button {
  min-height: 38px;
  margin-inline-end: 10px;
  padding: 7px 16px;
  color: var(--media-navy);
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  border: 0;
  border-radius: 10px;
  background: var(--media-blue-soft);
  cursor: pointer;
}

.media-file-help {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 6px 14px;
  margin-top: 9px;
  color: var(--media-muted);
  font-size: 11px;
  line-height: 1.6;
}

.media-primary-button,
body .media-suite input.media-primary-button {
  display: block;
  width: min(100%, 310px);
  min-height: 50px;
  margin: 22px auto 0;
  padding: 10px 20px;
  color: #fff;
  font: inherit;
  font-size: 15px;
  font-weight: 700;
  border: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--media-navy), var(--media-blue));
  box-shadow: 0 9px 20px rgba(13, 97, 177, .19);
  cursor: pointer;
  transition: transform .17s ease, box-shadow .17s ease;
}

.media-primary-button:hover,
.media-primary-button:focus-visible,
body .media-suite input.media-primary-button:hover,
body .media-suite input.media-primary-button:focus-visible {
  color: #fff;
  box-shadow: 0 12px 26px rgba(13, 97, 177, .25);
  transform: translateY(-1px);
}

.media-album-promo {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 14px;
  min-height: 86px;
  margin-top: 22px;
  padding: 16px 20px;
  color: var(--media-ink);
  border: 1px solid #ecd5dc;
  border-radius: 19px;
  background: linear-gradient(90deg, #fff9fb, #fff);
  box-shadow: 0 8px 22px rgba(117, 35, 64, .05);
}

.media-album-promo:hover,
.media-album-promo:focus-visible {
  color: var(--media-ink);
  border-color: #e7bdca;
}

.media-album-promo__icon {
  width: 52px;
  height: 52px;
  padding: 11px;
  color: var(--media-pink);
  border-radius: 15px;
  background: var(--media-pink-soft);
}

.media-album-promo strong,
.media-album-promo small {
  display: block;
}

.media-album-promo strong {
  color: var(--media-navy);
  font-size: 15px;
}

.media-album-promo small {
  margin-top: 4px;
  color: var(--media-muted);
  font-size: 12px;
  line-height: 1.6;
}

.media-album-promo > b {
  color: var(--media-pink);
  font-size: 28px;
  line-height: 1;
}

.media-limit-note {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  margin-top: 22px;
  padding: 19px 21px;
  border-color: #f1ccd7;
  background: #fff8fa;
}

.media-limit-note__icon {
  width: 54px;
  height: 54px;
  padding: 12px;
  color: var(--media-pink);
  border-radius: 16px;
  background: #ffeaf0;
}

.media-limit-note strong {
  color: #a92950;
  font-size: 15px;
}

.media-limit-note p {
  margin: 5px 0 0;
  color: #6f7180;
  font-size: 13px;
  line-height: 1.7;
}

.media-limit-note a {
  color: var(--media-blue);
  font-weight: 700;
}

.media-album-upload {
  margin-top: 22px;
}

.media-album-upload__controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  align-items: end;
  gap: 16px;
}

.media-album-upload__controls > div {
  min-width: 0;
}

.media-album-upload__controls .media-primary-button,
body .media-album-upload__controls input.media-primary-button {
  width: 100%;
  margin: 0;
}

.media-gallery {
  margin-top: 22px;
  padding: 24px;
}

.media-gallery__head {
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr);
  align-items: center;
  gap: 13px;
  margin-bottom: 19px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e3edf5;
}

.media-gallery__head > span {
  width: 50px;
  height: 50px;
  padding: 11px;
  color: var(--media-pink);
  border-radius: 15px;
  background: var(--media-pink-soft);
}

.media-album-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 17px;
}

.media-album-item {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid #dbe7f1;
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(9, 50, 94, .055);
}

.media-album-item__image {
  position: relative;
  display: block;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #edf5fb;
}

.media-album-item__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  transition: transform .22s ease;
}

.media-album-empty {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  align-items: center;
  gap: 15px;
  min-height: 118px;
  padding: 21px;
  color: var(--media-muted);
  border: 1px dashed #cbddec;
  border-radius: 17px;
  background: linear-gradient(135deg, #fbfdff, #fff9fb);
}

.media-album-empty__icon {
  width: 56px;
  height: 56px;
  padding: 13px;
  color: var(--media-blue);
  border-radius: 17px;
  background: var(--media-blue-soft);
}

.media-album-empty strong,
.media-album-empty p {
  display: block;
  margin: 0;
}

.media-album-empty strong {
  color: var(--media-navy);
  font-size: 15px;
}

.media-album-empty p {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.7;
}

.media-album-item__image > span {
  position: absolute;
  inset-inline-end: 9px;
  bottom: 9px;
  width: 34px;
  height: 34px;
  padding: 8px;
  color: #fff;
  border-radius: 11px;
  background: rgba(10, 52, 101, .78);
  opacity: 0;
  transform: translateY(4px);
  transition: opacity .18s ease, transform .18s ease;
}

.media-album-item__image:hover img,
.media-album-item__image:focus-visible img {
  transform: scale(1.035);
}

.media-album-item__image:hover > span,
.media-album-item__image:focus-visible > span {
  opacity: 1;
  transform: translateY(0);
}

.media-album-item figcaption {
  padding: 9px;
}

.media-album-item__delete {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 44px;
  color: #b7355b;
  font-size: 12px;
  font-weight: 700;
  border-radius: 11px;
  background: #fff7f9;
}

.media-album-item__delete:hover,
.media-album-item__delete:focus-visible {
  color: #9c2247;
  background: #ffeef3;
}

.media-album-item__delete svg {
  width: 18px;
  height: 18px;
}

@media (max-width: 1100px) {
  .media-suite {
    width: calc(100% - 24px);
  }

  .media-profile-grid {
    grid-template-columns: minmax(280px, .82fr) minmax(360px, 1.18fr);
  }

  .media-album-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .media-suite {
    margin-top: 22px;
  }

  .media-suite-hero {
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 17px;
    min-height: 154px;
    padding: 24px;
    border-radius: 22px;
  }

  .media-suite-hero__icon {
    width: 70px;
    height: 70px;
    padding: 15px;
    border-radius: 20px;
  }

  .media-suite-hero--compact {
    min-height: 136px;
  }

  .media-suite-hero h2 {
    font-size: 27px;
  }

  .media-suite-hero p {
    font-size: 14px;
  }

  .media-hub-card {
    grid-template-columns: 64px minmax(0, 1fr);
    min-height: 174px;
    padding: 21px;
  }

  .media-hub-card__icon {
    width: 64px;
    height: 64px;
    padding: 13px;
  }

  .media-hub-card__copy strong {
    font-size: 18px;
  }

  .media-profile-grid {
    grid-template-columns: 1fr;
  }

  .media-current-photo {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 170px;
    grid-template-areas:
      "head photo"
      "delete photo";
    align-items: center;
    gap: 8px 20px;
  }

  .media-current-photo__head {
    grid-area: head;
    margin: 0;
  }

  .media-current-photo__frame {
    grid-area: photo;
    width: 170px;
    height: 170px;
  }

  .media-delete-link {
    grid-area: delete;
    width: max-content;
    margin-top: 7px;
  }

  .media-album-upload__controls {
    grid-template-columns: minmax(0, 1fr) 190px;
  }
}

@media (max-width: 620px) {
  .media-suite {
    width: calc(100% - 20px);
    margin: 18px auto 28px;
  }

  .media-suite-hero,
  .media-suite-hero--compact {
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 13px;
    min-height: 126px;
    padding: 18px 16px;
    border-radius: 19px;
  }

  .media-suite-hero__icon,
  .media-suite-hero--compact .media-suite-hero__icon {
    width: 58px;
    height: 58px;
    padding: 12px;
    border-radius: 17px;
  }

  .media-suite-hero__eyebrow {
    min-height: 25px;
    margin-bottom: 3px;
    padding: 2px 9px;
    font-size: 11px;
  }

  .media-suite-hero h2 {
    font-size: 22px;
  }

  .media-suite-hero p {
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.65;
  }

  .media-suite-back {
    min-height: 24px;
    margin-bottom: 1px;
    font-size: 11px;
  }

  .media-hub-grid {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-top: 16px;
  }

  .media-hub-card {
    grid-template-columns: 62px minmax(0, 1fr);
    min-height: 140px;
    padding: 17px 18px;
    border-radius: 18px;
  }

  .media-hub-card__icon {
    width: 62px;
    height: 62px;
    border-radius: 18px;
  }

  .media-hub-card__copy strong {
    font-size: 17px;
  }

  .media-hub-card__copy small {
    margin-top: 3px;
    font-size: 12px;
    line-height: 1.55;
  }

  .media-hub-card__action {
    min-height: 30px;
    font-size: 12px;
  }

  .media-suite-note {
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 10px;
    margin-top: 14px;
    padding: 13px;
    border-radius: 15px;
  }

  .media-suite-note > span {
    width: 38px;
    height: 38px;
  }

  .media-suite-note p {
    font-size: 11px;
  }

  .media-profile-grid {
    gap: 14px;
    margin-top: 16px;
  }

  .media-current-photo,
  .media-upload-card,
  .media-gallery,
  .media-limit-note {
    border-radius: 18px;
  }

  .media-current-photo {
    display: flex;
    padding: 18px 16px;
  }

  .media-current-photo__head {
    margin-bottom: 14px;
  }

  .media-current-photo__head h3,
  .media-upload-card__head h3,
  .media-gallery__head h3 {
    font-size: 17px;
  }

  .media-current-photo__frame {
    width: 168px;
    height: 168px;
  }

  .media-delete-link {
    width: auto;
    margin-top: 16px;
  }

  .media-upload-card {
    padding: 18px 16px;
  }

  .media-upload-card__head {
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 11px;
    margin-bottom: 16px;
    padding-bottom: 14px;
  }

  .media-upload-card__icon {
    width: 46px;
    height: 46px;
    padding: 10px;
  }

  .media-file-input,
  .media-file-input::file-selector-button {
    font-size: 16px;
  }

  .media-file-input::file-selector-button {
    padding-inline: 12px;
  }

  .media-file-help {
    display: grid;
    gap: 1px;
    font-size: 10px;
  }

  .media-primary-button,
  body .media-suite input.media-primary-button {
    width: 100%;
    min-height: 50px;
    margin-top: 17px;
    font-size: 14px;
  }

  .media-album-promo {
    grid-template-columns: 45px minmax(0, 1fr) 18px;
    gap: 10px;
    min-height: 78px;
    margin-top: 14px;
    padding: 13px;
    border-radius: 16px;
  }

  .media-album-promo__icon {
    width: 45px;
    height: 45px;
  }

  .media-album-promo strong {
    font-size: 13px;
  }

  .media-album-promo small {
    font-size: 10px;
  }

  .media-limit-note {
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 11px;
    margin-top: 15px;
    padding: 15px;
  }

  .media-limit-note__icon {
    width: 44px;
    height: 44px;
    padding: 10px;
  }

  .media-limit-note strong {
    font-size: 13px;
  }

  .media-limit-note p {
    font-size: 11px;
  }

  .media-album-upload {
    margin-top: 15px;
  }

  .media-album-upload__controls {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .media-gallery {
    margin-top: 15px;
    padding: 16px;
  }

  .media-gallery__head {
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 10px;
    margin-bottom: 14px;
    padding-bottom: 13px;
  }

  .media-gallery__head > span {
    width: 44px;
    height: 44px;
    padding: 10px;
  }

  .media-album-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
  }

  .media-album-item {
    border-radius: 14px;
  }

  .media-album-item__image > span {
    display: none;
  }

  .media-album-item figcaption {
    padding: 6px;
  }

  .media-album-item__delete {
    min-height: 44px;
    font-size: 11px;
  }

  .media-album-empty {
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 11px;
    min-height: 102px;
    padding: 15px;
  }

  .media-album-empty__icon {
    width: 46px;
    height: 46px;
    padding: 10px;
  }
}

@media (max-width: 359px) {
  .media-suite {
    width: calc(100% - 14px);
  }

  .media-suite-hero,
  .media-suite-hero--compact {
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 10px;
    padding-inline: 13px;
  }

  .media-suite-hero__icon,
  .media-suite-hero--compact .media-suite-hero__icon {
    width: 50px;
    height: 50px;
    padding: 10px;
  }

  .media-suite-hero h2 {
    font-size: 19px;
  }

  .media-hub-card {
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 5px 12px;
    padding: 15px;
  }

  .media-hub-card__icon {
    width: 54px;
    height: 54px;
    padding: 11px;
  }

  .media-hub-card__copy small {
    font-size: 11px;
  }

  .media-album-grid {
    gap: 8px;
  }
}

@media (hover: none) {
  .media-album-item__image > span {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .media-suite *,
  .media-suite *::before,
  .media-suite *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* r170 — simple, modern photo management workspace */
body:has(.media-profile-page) .media-hub,
body:has(.media-album-page) .media-hub,
body.media-detail-view .media-hub {
  display: none !important;
}

.media-home,
.photo-editor {
  width: min(100%, 820px);
  margin: 18px auto 28px;
}

.album-manager {
  width: min(100%, 940px);
  margin: 18px auto 28px;
}

.media-home__header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 2px 2px 13px;
  border-bottom: 1px solid #dce8f2;
}

.media-home__header-icon {
  flex: 0 0 auto;
  width: 58px;
  height: 58px;
  padding: 13px;
  color: #0d7fe8;
  border: 1px solid #d6e8f7;
  border-radius: 18px;
  background: #eef7ff;
}

.media-home__header-copy h2,
.media-manager-header h2 {
  margin: 0;
  color: #0d3769;
  font-size: clamp(23px, 2.25vw, 28px);
  line-height: 1.4;
}

.media-home__header-copy p,
.media-manager-header p {
  margin: 4px 0 0;
  color: #71849d;
  font-size: 14px;
  line-height: 1.75;
}

.media-home__choices {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}

.media-home__choice {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 11px;
  min-height: 78px;
  padding: 13px 15px;
  color: #102f56;
  border: 1px solid #d8e6f3;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(9, 50, 94, .055);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.media-home__choice:hover,
.media-home__choice:focus-visible {
  color: #102f56;
  border-color: #bcd9ef;
  box-shadow: 0 12px 28px rgba(9, 50, 94, .1);
  transform: translateY(-2px);
}

.media-home__choice-icon {
  width: 46px;
  height: 46px;
  padding: 10px;
  color: #0d7fe8;
  border-radius: 13px;
  background: #edf7ff;
}

.media-home__choice--album .media-home__choice-icon {
  color: #d63e6b;
  background: #fff3f7;
}

.media-home__choice-copy strong,
.media-home__choice-copy small {
  display: block;
}

.media-home__choice-copy strong {
  color: #0d3769;
  font-size: 16px;
  line-height: 1.5;
}

.media-home__choice-copy small {
  margin-top: 3px;
  color: #71849d;
  font-size: 12.5px;
  line-height: 1.7;
}

.media-home__choice-arrow {
  color: #0d7fe8;
  font-size: 28px;
  line-height: 1;
}

.media-home__choice--album .media-home__choice-arrow {
  color: #d63e6b;
}

.media-manager-header {
  padding: 0 3px 13px;
  border-bottom: 1px solid #dce8f2;
}

.media-manager-back {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 34px;
  margin-bottom: 4px;
  color: #0d7fe8;
  font-size: 13px;
  font-weight: 700;
}

.media-manager-back span {
  font-size: 22px;
  line-height: 1;
}

.photo-editor__workspace {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  margin-top: 14px;
  overflow: hidden;
  border: 1px solid #d8e6f3;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(9, 50, 94, .065);
}

.photo-editor__preview {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 22px 18px;
  border-inline-end: 1px solid #e2ebf3;
  background: linear-gradient(150deg, #f6fbff 0%, #fff 70%, #fff8fa 100%);
}

.photo-editor__frame {
  display: grid;
  place-items: center;
  width: 164px;
  height: 164px;
  padding: 0;
  overflow: hidden;
  border: 1px solid #cfe0ef;
  border-radius: 50%;
  background: #fff;
  box-shadow:
    0 0 0 5px #fff,
    0 0 0 6px #cfe0ef,
    0 12px 28px rgba(9, 50, 94, .11);
}

.photo-editor__frame img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 26%;
  border-radius: 50%;
}

.photo-editor__preview-copy {
  width: 100%;
  margin-top: 13px;
  text-align: center;
}

.photo-editor__preview-copy h3,
.photo-editor__upload-head h3,
.album-manager__upload-head h3,
.album-gallery__head h3 {
  margin: 0;
  color: #0d3769;
  font-size: 18px;
  line-height: 1.5;
}

.photo-editor__preview-copy p,
.photo-editor__upload-head p,
.album-manager__upload-head p {
  margin: 4px 0 0;
  color: #71849d;
  font-size: 12px;
  line-height: 1.7;
}

.photo-editor__delete {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 44px;
  margin-top: 14px;
  padding: 8px 14px;
  color: #b7355b;
  font-size: 12px;
  font-weight: 700;
  border-radius: 12px;
  background: #fff3f7;
}

.photo-editor__delete:hover,
.photo-editor__delete:focus-visible {
  color: #9f2448;
  background: #ffe9f0;
}

.photo-editor__delete svg {
  width: 18px;
  height: 18px;
}

.photo-editor__upload {
  min-width: 0;
  padding: 22px;
}

.photo-editor__upload-head,
.album-manager__upload-head {
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr);
  align-items: center;
  gap: 13px;
  margin-bottom: 16px;
}

.photo-editor__upload-icon,
.album-manager__upload-icon {
  width: 50px;
  height: 50px;
  padding: 11px;
  color: #0d7fe8;
  border-radius: 15px;
  background: #edf7ff;
}

.photo-editor__file-label,
.album-manager__file-label {
  display: block;
  margin-bottom: 8px;
  color: #0d3769;
  font-size: 14px;
  font-weight: 700;
}

.photo-editor__file,
.album-manager__file,
body.page-account .site-main .photo-editor__file,
body.page-account .site-main .album-manager__file {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  min-height: 54px;
  padding: 6px;
  overflow: hidden;
  color: #5f738c;
  font: inherit;
  font-size: 14px;
  border: 1px solid #cbddec;
  border-radius: 14px;
  background: #fbfdff;
}

.photo-editor__file::file-selector-button,
.album-manager__file::file-selector-button,
.photo-editor__file::-webkit-file-upload-button,
.album-manager__file::-webkit-file-upload-button {
  min-height: 40px;
  margin-inline-end: 10px;
  padding: 7px 15px;
  color: #0d3769;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  border: 0;
  border-radius: 10px;
  background: #edf7ff;
  cursor: pointer;
}

.photo-editor__help,
.album-manager__file-control small {
  display: block;
  margin-top: 8px;
  color: #71849d;
  font-size: 11px;
  line-height: 1.6;
}

.photo-editor__submit,
.album-manager__submit,
body .media-suite input.photo-editor__submit,
body .media-suite input.album-manager__submit {
  display: block;
  min-height: 50px;
  padding: 10px 22px;
  color: #fff;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  border: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, #0d3769, #0d7fe8);
  box-shadow: 0 9px 20px rgba(13, 97, 177, .18);
  cursor: pointer;
}

.photo-editor__submit,
body .media-suite input.photo-editor__submit {
  width: min(100%, 320px);
  margin: 16px auto 0;
}

.photo-editor__submit:hover,
.photo-editor__submit:focus-visible,
.album-manager__submit:hover,
.album-manager__submit:focus-visible {
  color: #fff;
  box-shadow: 0 12px 25px rgba(13, 97, 177, .24);
}

.media-manager-next {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 11px;
  width: min(100%, 440px);
  min-height: 58px;
  margin: 12px auto 0;
  padding: 8px 12px;
  color: #102f56;
  border: 1px solid #d8e6f3;
  border-radius: 16px;
  background: #fff;
}

.media-manager-next:hover,
.media-manager-next:focus-visible {
  color: #102f56;
  border-color: #bfd9ec;
  background: #fbfdff;
}

.media-manager-next__icon {
  width: 44px;
  height: 44px;
  padding: 9px;
  color: #d63e6b;
  border-radius: 13px;
  background: #fff3f7;
}

.media-manager-next strong,
.media-manager-next small {
  display: block;
}

.media-manager-next strong {
  color: #0d3769;
  font-size: 14px;
}

.media-manager-next small {
  margin-top: 2px;
  color: #71849d;
  font-size: 11px;
}

.media-manager-next > b {
  color: #0d7fe8;
  font-size: 24px;
}

.album-manager__limit {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 13px;
  margin-top: 18px;
  padding: 16px 18px;
  color: #6f7180;
  border: 1px solid #f1ccd7;
  border-radius: 16px;
  background: #fff8fa;
}

.album-manager__limit-icon {
  width: 48px;
  height: 48px;
  padding: 10px;
  color: #d63e6b;
  border-radius: 14px;
  background: #ffeaf0;
}

.album-manager__limit strong {
  color: #a92950;
  font-size: 14px;
}

.album-manager__limit p {
  margin: 3px 0 0;
  font-size: 12px;
  line-height: 1.7;
}

.album-manager__limit a {
  color: #0d7fe8;
  font-weight: 700;
}

.album-manager__upload {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  margin-top: 14px;
  padding: 15px;
  border: 1px solid #d8e6f3;
  border-radius: 16px;
  background: #f8fbfe;
}

.album-manager__upload-head {
  margin: 0;
}

.album-manager__upload-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 150px;
  align-items: end;
  gap: 14px;
}

.album-manager__file-control {
  min-width: 0;
}

.album-manager__submit,
body .media-suite input.album-manager__submit {
  width: 100%;
  margin: 0;
}

.album-gallery {
  margin-top: 18px;
}

.album-gallery__head {
  display: flex;
  align-items: center;
  min-height: 48px;
  margin-bottom: 14px;
  padding: 0 4px 12px;
  border-bottom: 1px solid #dce8f2;
}

.album-gallery__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 13px;
}

.album-gallery__item {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  contain: layout paint;
  border: 1px solid #dbe7f1;
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(9, 50, 94, .055);
}

.album-gallery__image {
  position: relative;
  display: block;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #edf5fb;
}

.album-gallery__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 30%;
}

.album-gallery__zoom {
  position: absolute;
  inset-inline-end: 9px;
  bottom: 9px;
  width: 34px;
  height: 34px;
  padding: 8px;
  color: #fff;
  border-radius: 11px;
  background: rgba(10, 52, 101, .78);
  opacity: 0;
  transform: translateY(4px);
  transition: opacity .18s ease, transform .18s ease;
}

.album-gallery__image:hover img,
.album-gallery__image:focus-visible img {
  transform: none;
}

.album-gallery__image:hover .album-gallery__zoom,
.album-gallery__image:focus-visible .album-gallery__zoom {
  opacity: 1;
  transform: none;
}

.album-gallery__item figcaption {
  padding: 7px;
}

.album-gallery__delete {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 44px;
  color: #b7355b;
  font-size: 12px;
  font-weight: 700;
  border-radius: 11px;
  background: #fff7f9;
}

.album-gallery__delete:hover,
.album-gallery__delete:focus-visible {
  color: #9c2247;
  background: #ffeef3;
}

.album-gallery__delete svg {
  width: 18px;
  height: 18px;
}

.album-gallery__empty {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  min-height: 110px;
  padding: 20px;
  color: #71849d;
  border: 1px dashed #cbddec;
  border-radius: 17px;
  background: #fbfdff;
}

.album-gallery__empty-icon {
  width: 54px;
  height: 54px;
  padding: 12px;
  color: #0d7fe8;
  border-radius: 16px;
  background: #edf7ff;
}

.album-gallery__empty strong,
.album-gallery__empty p {
  display: block;
  margin: 0;
}

.album-gallery__empty strong {
  color: #0d3769;
  font-size: 14px;
}

.album-gallery__empty p {
  margin-top: 3px;
  font-size: 12px;
}

.media-manager-header a:focus-visible,
.media-home a:focus-visible,
.photo-editor a:focus-visible,
.album-manager a:focus-visible,
.photo-editor input:focus-visible,
.album-manager input:focus-visible {
  outline: 3px solid rgba(13, 127, 232, .23);
  outline-offset: 3px;
}

@media (max-width: 1100px) {
  .media-home,
  .photo-editor {
    width: min(calc(100% - 24px), 820px);
  }

  .album-manager {
    width: min(calc(100% - 24px), 940px);
  }

  .album-gallery__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
  }
}

@media (max-width: 760px) {
  .album-gallery__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .photo-editor__workspace {
    grid-template-columns: 1fr;
  }

.photo-editor__preview {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 18px;
    padding: 18px;
    border-inline-end: 0;
    border-bottom: 1px solid #e2ebf3;
  }

.photo-editor__frame {
    width: 150px;
    height: 150px;
  }

  .photo-editor__preview-copy {
    margin: 0;
    text-align: right;
  }

  .album-manager__upload {
    grid-template-columns: 1fr;
    gap: 17px;
  }
}

@media (max-width: 620px) {
  .media-home,
  .photo-editor,
  .album-manager {
    width: calc(100% - 20px);
    margin: 16px auto 28px;
  }

  .media-home__header {
    gap: 12px;
    padding-bottom: 16px;
  }

  .media-home__header-icon {
    width: 50px;
    height: 50px;
    padding: 11px;
    border-radius: 15px;
  }

  .media-home__header-copy h2,
  .media-manager-header h2 {
    font-size: 22px;
  }

  .media-home__header-copy p,
  .media-manager-header p {
    font-size: 12px;
    line-height: 1.65;
  }

  .media-home__choices {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 15px;
  }

  .media-home__choice {
    grid-template-columns: 42px minmax(0, 1fr) 16px;
    gap: 11px;
    min-height: 72px;
    padding: 12px;
    border-radius: 15px;
  }

  .media-home__choice-icon {
    width: 42px;
    height: 42px;
    padding: 9px;
    border-radius: 12px;
  }

  .media-home__choice-copy strong {
    font-size: 16px;
  }

  .media-home__choice-copy small {
    font-size: 11px;
    line-height: 1.55;
  }

  .media-manager-header {
    padding: 0 2px 15px;
  }

  .media-manager-back {
    min-height: 30px;
    font-size: 11px;
  }

  .photo-editor__workspace {
    margin-top: 15px;
    border-radius: 18px;
  }

  .photo-editor__preview {
    display: flex;
    gap: 0;
    padding: 20px 16px;
  }

  .photo-editor__frame {
    width: 144px;
    height: 144px;
  }

  .photo-editor__preview-copy {
    margin-top: 15px;
    text-align: center;
  }

  .photo-editor__preview-copy h3,
  .photo-editor__upload-head h3,
  .album-manager__upload-head h3,
  .album-gallery__head h3 {
    font-size: 16px;
  }

  .photo-editor__upload {
    padding: 20px 16px;
  }

  .photo-editor__upload-head,
  .album-manager__upload-head {
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 10px;
    margin-bottom: 18px;
  }

  .photo-editor__upload-icon,
  .album-manager__upload-icon {
    width: 44px;
    height: 44px;
    padding: 10px;
  }

  .photo-editor__file,
  .album-manager__file,
  body.page-account .site-main .photo-editor__file,
  body.page-account .site-main .album-manager__file,
  .photo-editor__file::file-selector-button,
  .album-manager__file::file-selector-button {
    font-size: 16px;
  }

  .photo-editor__submit,
  .album-manager__submit,
  body .media-suite input.photo-editor__submit,
  body .media-suite input.album-manager__submit {
    width: 100%;
    min-height: 48px;
  }

  .media-manager-next {
    width: 100%;
    margin-top: 13px;
  }

  .album-manager__limit {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    margin-top: 14px;
    padding: 14px;
  }

  .album-manager__limit-icon {
    width: 42px;
    height: 42px;
    padding: 9px;
  }

  .album-manager__upload {
    margin-top: 14px;
    padding: 16px;
    border-radius: 17px;
  }

  .album-manager__upload-controls {
    grid-template-columns: 1fr;
    gap: 13px;
  }

  .album-gallery {
    margin-top: 18px;
  }

  .album-gallery__head {
    min-height: 42px;
    margin-bottom: 11px;
    padding-bottom: 9px;
  }

  .album-gallery__grid {
    gap: 10px;
  }

  .album-gallery__item {
    border-radius: 14px;
  }

  .album-gallery__zoom {
    display: none;
  }

  .album-gallery__item figcaption {
    padding: 6px;
  }

  .album-gallery__empty {
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 11px;
    min-height: 96px;
    padding: 14px;
  }

  .album-gallery__empty-icon {
    width: 46px;
    height: 46px;
    padding: 10px;
  }
}

@media (max-width: 480px) {
  .album-gallery__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 359px) {
  .media-home,
  .photo-editor,
  .album-manager {
    width: calc(100% - 14px);
  }

  .photo-editor__frame {
    width: 136px;
    height: 136px;
  }

  .album-gallery__grid {
    gap: 8px;
  }
}

/* The account summary belongs only to the first page after sign-in. */
body.page-account:not(.page-account-main) .account-welcome {
  display: none !important;
}

/* Modern password recovery page. Kept fully scoped to avoid changing shared forms. */
.password-recovery-form,
.password-recovery-form * {
  box-sizing: border-box;
}

.password-recovery-form {
  width: min(720px, calc(100% - 32px));
  max-width: 720px;
  margin: clamp(24px, 4vw, 52px) auto;
  color: #0f355f;
  direction: rtl;
}

.password-recovery-card {
  position: relative;
  overflow: hidden;
  border: 1px solid #d7e5f2;
  border-top: 4px solid #dc5c82;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(16, 56, 97, 0.09);
}

.password-recovery-card__header {
  display: grid;
  grid-template-columns: 60px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  padding: 24px clamp(22px, 4vw, 34px);
  border-bottom: 1px solid #e0eaf3;
  background: linear-gradient(135deg, #f4f9ff 0%, #fff8fb 100%);
}

.password-recovery-card__icon {
  display: inline-grid;
  width: 60px;
  height: 60px;
  place-items: center;
  border: 1px solid #d4e7f8;
  border-radius: 18px;
  color: #0b78de;
  background: #eaf5ff;
}

.password-recovery-card__icon svg path:last-child {
  color: #dc426f;
}

.password-recovery-card__heading,
.password-recovery-captcha__heading > div {
  min-width: 0;
}

.password-recovery-card__heading h2,
.password-recovery-card__heading p,
.password-recovery-captcha__heading h3,
.password-recovery-captcha__heading p {
  margin: 0;
}

.password-recovery-card__heading h2 {
  color: #0d3b6d;
  font-size: clamp(24px, 3.2vw, 31px);
  line-height: 1.3;
}

.password-recovery-card__heading p {
  margin-top: 5px;
  color: #6f8297;
  font-size: 15px;
  line-height: 1.7;
}

.password-recovery-card__body {
  display: grid;
  gap: 24px;
  padding: clamp(22px, 4vw, 34px);
}

.password-recovery-field label {
  display: block;
  margin: 0 0 9px;
  color: #123d69;
  font-size: 17px;
  font-weight: 700;
}

.password-recovery-field input[type="text"] {
  display: block;
  width: 100% !important;
  max-width: none !important;
  min-height: 52px;
  margin: 0 !important;
  padding: 10px 15px;
  border: 1px solid #bfd3e6;
  border-radius: 14px;
  color: #12385f;
  background: #fff;
  font: inherit;
  font-size: 16px;
  line-height: 1.4;
  text-align: left;
  direction: ltr;
  outline: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.password-recovery-field input[type="text"]:focus {
  border-color: #1688ec;
  box-shadow: 0 0 0 4px rgba(22, 136, 236, 0.12), 0 0 0 7px rgba(220, 66, 111, 0.06);
}

.password-recovery-field small {
  display: block;
  margin-top: 7px;
  color: #8291a3;
  font-size: 13px;
  line-height: 1.6;
}

.password-recovery-captcha {
  overflow: hidden;
  padding: 18px;
  border: 1px solid #d5e6f4;
  border-radius: 18px;
  background: #f7fbff;
}

.password-recovery-captcha__heading {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  margin-bottom: 15px;
}

.password-recovery-captcha__icon {
  display: inline-grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 13px;
  color: #0b78de;
  background: #e8f4ff;
}

.password-recovery-captcha__heading h3 {
  color: #123d69;
  font-size: 17px;
  line-height: 1.35;
}

.password-recovery-captcha__heading p {
  margin-top: 2px;
  color: #7b8da1;
  font-size: 13px;
  line-height: 1.55;
}

.password-recovery-form .registration-captcha,
.password-recovery-form .registration-captcha tbody {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-collapse: separate !important;
  background: transparent !important;
  box-shadow: none !important;
}

.password-recovery-form .registration-captcha .captcha-title-row {
  display: none !important;
}

.password-recovery-form .registration-captcha .captcha-image-row,
.password-recovery-form .registration-captcha .captcha-entry-row {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.password-recovery-form .registration-captcha .captcha-image-row > td,
.password-recovery-form .registration-captcha .captcha-entry-row > td {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.password-recovery-form .registration-captcha .captcha-image-cell > p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  min-width: 0;
  margin: 0 0 15px !important;
  text-align: right;
}

.password-recovery-form .registration-captcha #siimage {
  display: block;
  width: auto;
  max-width: min(100%, 250px) !important;
  height: auto !important;
  min-height: 62px;
  margin: 0 !important;
  border: 1px solid #c4d8e9 !important;
  border-radius: 12px;
  background: #fff;
  object-fit: contain;
}

.password-recovery-form .registration-captcha object {
  flex: 0 0 32px;
  max-width: 32px;
  overflow: hidden;
  border-radius: 8px;
}

.password-recovery-form .registration-captcha .captcha-image-cell a {
  display: inline-grid !important;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  place-items: center;
  border: 1px solid #cfe0ed !important;
  border-radius: 12px;
  background: #fff;
  transition: background-color 0.18s ease, border-color 0.18s ease;
}

.password-recovery-form .registration-captcha .captcha-image-cell a:hover {
  border-color: #9cc8ea !important;
  background: #eef7ff;
}

.password-recovery-form .registration-captcha .captcha-image-cell a img {
  display: block;
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
}

.password-recovery-form .registration-captcha .captcha-label-long {
  display: none !important;
}

.password-recovery-form .registration-captcha .captcha-label-short {
  display: inline !important;
}

.password-recovery-form .registration-captcha .captcha-label-cell {
  margin-bottom: 7px !important;
  color: #456582;
  font-size: 14px;
  font-weight: 700;
}

.password-recovery-form .registration-captcha .captcha-entry-row > td:last-child {
  display: grid !important;
  grid-template-columns: minmax(0, 280px) minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.password-recovery-form .registration-captcha #captcha {
  display: block;
  width: 100% !important;
  max-width: 280px !important;
  min-height: 50px;
  margin: 0 !important;
  padding: 9px 14px;
  border: 1px solid #bfd3e6;
  border-radius: 13px;
  color: #12385f;
  background: #fff;
  font: inherit;
  font-size: 18px;
  line-height: 1.4;
  text-align: center;
  letter-spacing: 0.12em;
  direction: ltr;
  outline: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.password-recovery-form .registration-captcha #captcha:focus {
  border-color: #1688ec;
  box-shadow: 0 0 0 4px rgba(22, 136, 236, 0.12);
}

.password-recovery-form .registration-captcha #capview {
  display: block;
  min-width: 0;
  color: #c73e64;
  font-size: 13px;
  line-height: 1.5;
}

.password-recovery-card__actions {
  display: flex;
  justify-content: center;
  padding: 18px clamp(22px, 4vw, 34px) 22px;
  border-top: 1px solid #e0eaf3;
  background: #f8fbff;
}

.password-recovery-form .password-recovery-card__actions .sub-button {
  width: min(100%, 290px) !important;
  min-width: 0 !important;
  min-height: 52px;
  margin: 0 !important;
  padding: 10px 24px !important;
  border: 0 !important;
  border-radius: 14px !important;
  color: #fff !important;
  background: linear-gradient(135deg, #0c447c 0%, #1289ed 100%) !important;
  box-shadow: 0 8px 18px rgba(18, 117, 201, 0.2);
  font: inherit;
  font-size: 18px !important;
  font-weight: 700;
  line-height: 1.3;
  cursor: pointer;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.password-recovery-form .password-recovery-card__actions .sub-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(18, 117, 201, 0.24);
}

.password-recovery-form .password-recovery-card__actions .sub-button:focus-visible {
  outline: 3px solid rgba(220, 66, 111, 0.26);
  outline-offset: 3px;
}

@media (max-width: 760px) {
  .password-recovery-form {
    width: min(640px, calc(100% - 24px));
    margin: 22px auto 28px;
  }
}

@media (max-width: 620px) {
  .password-recovery-form {
    width: calc(100% - 20px);
    margin: 16px auto 22px;
  }

  .password-recovery-card {
    border-radius: 18px;
  }

  .password-recovery-card__header {
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 12px;
    padding: 17px 16px;
  }

  .password-recovery-card__icon {
    width: 50px;
    height: 50px;
    border-radius: 15px;
  }

  .password-recovery-card__heading h2 {
    font-size: 22px;
  }

  .password-recovery-card__heading p {
    font-size: 13px;
  }

  .password-recovery-card__body {
    gap: 19px;
    padding: 18px 16px;
  }

  .password-recovery-captcha {
    padding: 14px;
    border-radius: 15px;
  }

  .password-recovery-captcha__heading {
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 9px;
    margin-bottom: 13px;
  }

  .password-recovery-captcha__icon {
    width: 40px;
    height: 40px;
    border-radius: 12px;
  }

  .password-recovery-form .registration-captcha .captcha-image-cell > p {
    gap: 8px;
  }

  .password-recovery-form .registration-captcha #siimage {
    max-width: calc(100% - 54px) !important;
  }

  .password-recovery-form .registration-captcha .captcha-entry-row > td:last-child {
    grid-template-columns: 1fr;
  }

  .password-recovery-form .registration-captcha #captcha {
    max-width: none !important;
    font-size: 18px;
  }

  .password-recovery-card__actions {
    padding: 16px;
  }

  .password-recovery-form .password-recovery-card__actions .sub-button {
    width: 100% !important;
    font-size: 17px !important;
  }
}

@media (max-width: 359px) {
  .password-recovery-form {
    width: calc(100% - 14px);
  }

  .password-recovery-card__header {
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 10px;
    padding-inline: 13px;
  }

  .password-recovery-card__icon {
    width: 44px;
    height: 44px;
  }

  .password-recovery-card__heading h2 {
    font-size: 20px;
  }

  .password-recovery-card__body,
  .password-recovery-card__actions {
    padding-inline: 13px;
  }

  .password-recovery-captcha {
    padding: 12px;
  }
}
